Tag: asp.net mvc

MVC 5 UserManager:实体类型ApplicationUser不是当前上下文的模型的一部分

我正在尝试(但没有)将MVC UserManager实现到我的网站。 我认为我的案子相当微不足道。 我有一个User类(entity framework – 数据库优先),其中包含所有用户的信息。 并非用户中的每个用户都可以访问该网站。 所以在我的ApplicationUser中有一个指向这个类的链接。 在代码中它看起来像这样: public partial class User { public int Id { get; set; } public string Firstname { get; set; } public string Lastname { get; set; } public string Email { get; set; } } public class ApplicationUser : IdentityUser { public virtual Entities.User UserInfo { […]

您必须将有效的JavaScript API域指定为此密钥配置的一部分。 在LinkedIn

我尝试使用带有回调选项的LinkedIn共享选项创建一个MVC4应用程序。 我用我的app id在我的Layout.cshtml中引用我的脚本。 api_key: APIkeyGOEShere function testme(count) { alert(“That document has been shared: ” + count + ” times”); } 但是萤火虫显示的信息如下图所示 但我相信我的AppID是正确的。 我不知道出现此错误的原因是什么。 编辑 我将api_key放在单引号内 api_key: ‘APIkeyGOEShere’ 但我在萤火虫中得到了一个不同的东西 错误:API密钥无效抛出新错误(“API密钥无效”); 任何格式都需要将API密钥放在javascript中。 请帮忙。

entity framework4 TPHinheritance,如何将一种类型转换为另一种?

我已经找到了一些有关这方面的信息,但还不足以让我理解这种情况的最佳实践。 我有你的典型TPH设置与抽象基类“公司”。 我有几个孩子“小公司”,“大公司”等inheritance自公司。 实际上,我实际上对公司有不同的现实分类,但我试图在这个例子中保持简单。 在根据TPH的数据库中,我有一个具有FirmTypeId列(int)的Firm表,用于区分所有这些类型。 一切都很好,除了我要求允许用户将一种类型的公司改为另一种公司。 例如,用户在添加公司时可能会犯错,并希望将其从Big Firm更改为Small Firm。 因为entity framework不允许将区分数据库列暴露为属性,所以我不相信有一种方法可以通过EF将一种类型更改为另一种类型。 如果我错了,请纠正我。 我看到它的方式我有两个选择: 不要使用TPH。 只需拥有一个公司实体并返回使用.Where(FirmTypeId == something)来区分类型。 使用context.ExecuteStoreCommand直接执行SQL以更新数据库的FirmTypeId列。 我看过一篇post,人们认为OOP的一个原则是实例不能改变它们的类型。 虽然这对我来说很有意义,但我似乎无法连接点。 如果我们遵循这个规则,那么唯一一次使用任何类型的inheritance(TPH / TPT)就是确定一种类型永远不会被转换为另一种类型。 因此,小公司永远不会成为一家大公司。 我看到应该使用构图的建议。 即使它对我没有意义(意思是我没有看到一家公司如何拥有一家大公司,对我来说,一家大公司是一家公司),我可以看到如果数据在哪里,可以如何在EF中建模组合。多个表格。 但是,在我在数据库中有一个表的情况下,它似乎是TPH或我在上面#1和#2中描述的内容。

如何在MVC 4中的同一视图中打开窗口?

我在视图中有一个Telerik MVC网格,带有“下载”自定义按钮。 此按钮重定向到我的下载操作,此下载操作将我重定向到下载视图,该视图以窗口模式显示一些图像。 我想在同一页面打开这个窗口,网格’在’下面。 我的代码: c.Bound(column => column.IsStock); c.Bound(column => column.Version); c.Command(cmd => cmd.Custom(“Download”) .Text(“Download”) .DataRouteValues(d => { d.Add(k => k.IDDocument); d.Add(k => k.ReceivedDate); }) .SendDataKeys(true) .Action(“Download”, “Administrative”)); 行动: [Authorize(Roles = “Administrator, Employee”)] public ActionResult Download(DocumentModel model) { var listUris = new List(); var uris = ServiceProxy.GetInstance().GetContainerUri(model.IDProtocol.ToString(), model.IDDocument.ToString())); foreach (var uri in uris) { listuris.Add(uri.AbsoluteUri); […]

迁移不按我的意愿工作… Asp.net EntityFramework

我正在学习这个教程asp.net电影教程,我的模型中有2个简单的文件。 public class Movie { public int ID { get; set; } [Required] public string Title { get; set; } } public class MovieDBContext : DbContext { public DbSet Movies { get; set; } } 另一个是Visual Studio给我的帐户模型: public class UsersContext : DbContext { public UsersContext() : base(“DefaultConnection”) { } public DbSet UserProfiles { get; set; […]

MVC5 ViewModelvalidation远程

我试图在validation视图模型的同一阶段validation用户名,其余的validation工作正常,但我正在尝试使用以下代码片段来检查用户名是否已被使用: // Cut down code to keep it simple. public class UserAccountRegistration { [Remote(“CheckUsername”, “Validation”, ErrorMessage = “Username already exists.”)] public string Username { get; set; } } 我在Controllers目录中有一个名为“ValidationController.cs”的控制器,该控制器包含以下内容: using System; using System.Web.Mvc; using Test.Helpers; using System.Data.SqlClient; using System.Data; namespace Test.Controllers { public class ValidationController : Controller { // GET: Validation public ActionResult Index() { […]

返回模型以使用selectlistitem默认值查看错误

我有一些问题与我的下拉列表的默认值在返回我的模型以查看一个或多个错误时。 我在视图中有一个下拉列表,它从控制器和同一视图中的其他空下拉列表中填充,在第一个下拉列表的选择中填充了JSON。 public ActionResult Countriesdata() { CountrydetailsViewModel vm= new CountrydetailsViewModel(); vm.countries= dal.countries().Select(x => new SelectListItem { Text = x.Name, Value = x.CountryID.ToString() }) .ToList(); return View(vm); } 这里,dal是我的数据访问层,允许我从数据库中填写国家列表。 用于填充视图中的国家/地区列表的代码是这样的 @Html.DropDownListFor(m => m.selectedcountry, new SelectList(Model.countries, “Value”, “Text”, Model.selectedcountry), “-Select a Country-“, new { @class = “ddlist” }) 其中一个空的下拉列表如下所示 @Html.DropDownListFor(m => m.selectedtown, new SelectList(Enumerable.Empty(), “Value”, “Text”, Model.selectedtown), […]

asp.net mvc父子视图,父视图更新子项

我正在使用局部视图来创建父子视图。 理想情况下,父视图上的提交按钮用于保存子值。 我有以下型号。 public class Course { public int CourseId { get; set; } public string Name { get; set; } public int Par { get; set; } public string Tee { get; set; } public decimal Rating { get; set; } public virtual IEnumerable Holes { get; set; } public static Course Create() { […]

在MVC中,如何使用控制器仅为已批准的用户呈现部分视图?

在MVC 5中,我尝试仅在(Windows Authenticated)用户属于一个或多个Active Directory组列表时才使用控制器呈现部分视图。 我需要考虑30多个不同的小组,所以“你好世界”的例子不符合我的需要。 在网上玩清道夫之后,我设法收集了这么多。 没有编译或运行时错误,但内容显示给所有用户而不是特定用户。 因此,尚未实现预期的结果。 虽然我可以在视图中使用if-then逻辑来实现期望的结果,但它会产生大量不必要的重复并鼓励spaghettification。 所以我试图在控制器中执行此操作。 期望结果摘要: 当用户加载视图时,仅当Windows Authenticated用户属于控制器操作中定义的一个或多个组列表时,才应呈现局部视图。 如果用户未获得授权,则不包括部分视图。 控制器块: [ChildActionOnly] [Authorize(Roles=”Domain\\GroupA,Domain\\GroupB”)] public ActionResult MonitorCSU() { return PartialView(“MonitorCSU”); } 查看块: @Html.Partial(“MonitorCSU”) 不成功的迭代: 在控制器块中,我尝试(不成功)使用if-then块,else情况是另一个没有内容的局部视图。 [ChildActionOnly] public ActionResult MonitorCSU(){if(User.IsInRole(“Domain \ GroupA”)){return PartialView(“_ MonitorCSU”); } else {return PartialView(“_ Unauthorized”); }} 在Razor中,我尝试使用HTML.Action但是当我尝试运行页面时,浏览器挂起了无限循环。

在ASP.NET MVC5上设置值之后,静态属性在每个请求中始终为null

我有一个静态类和静态属性 public static class Test { public static string Tests { get; set; } } 现在的问题是,我在控制器中有一个Action public ActionResult SomeActionInController(){ “ “ // this place always execute in every request if (null == Test.Tests) Test.Tests = “some value”; “ “ } 但是我会在每个请求中得到null ,而不是本地调试, 只在服务器上 。 我看到很多人说: 静态属性值将保留在整个应用领域 ,但为什么现在这样呢? 有没有办法修复它? 谢谢。 我的服务器使用IIS 8.5与Windows Server 2012 R2 UPDATE1 […]