Tag: asp.net mvc 3

EF:一对一的关系

我正试图建立一个双向的一对一关系。 但是,我无法获得两个实体的双向设置。 例如,假设一个人有一个电话号码,一个电话号码只能与一个人相关联。 我会: public class Person : Entity { public long PersonId { get; set; } public virtual PhoneNumber PhoneNumber {get; set; } } public class PhoneNumber : Entity { public long PhoneNumberId { get; set; } } 但是,通过这种重新安排,我无法获得双向设置。 即我不能有phoneNumber.Person. 我试过的: public class PhoneNumber : Entity { public long PhoneNumberId { get; set; } […]

EntityCommandExecutionException未处理

我正在使用EF 4.1 MVC3编写应用程序。 我正在尝试在它上面实现CRUD。 问题是,当我尝试实现第一个索引页面时,它给了我一个错误。 我正在使用中央服务器的外部数据库。 我只是在尝试一个简单的注册表单。 我有第一个模型类RegModel.cs using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace Registration.Models { public class Register { public int Id { get; set; } public string UserName { get; set; } public string Password { get; set; } public string Email { get; set; } public string Address { […]

派生属性上的自定义模型绑定不起作用

我有一个自定义的ModelBinder(MVC3),由于某种原因没有被解雇。 以下是相关的代码: 视图 @model WebApp.Models.InfoModel @using Html.BeginForm() { @Html.EditorFor(m => m.Truck) } EditorTemplate @model WebApp.Models.TruckModel @Html.EditorFor(m => m.CabSize) ModelBinder的 public class TruckModelBinder : IModelBinder { public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext) { throw new NotImplementedException(); } } Global.asax中 protected void Application_Start() { … ModelBinders.Binders.Add(typeof(TruckModel), new TruckModelBinder()); … } InfoModel public class InfoModel { public VehicleModel […]

ASP.NET MVC RouteExistingFiles问题

在查看路由表之前,ASP.NET MVC 3似乎将首先提供现有文件。 可以通过设置选项routes.RouteExistingFiles = true来关闭它。 当它设置为不路由现有文件时,它似乎不提供所有文件。 例如,如果文件名为* .cs,则不会提供。 如果文件重命名为.txt,则会将其提供。 我觉得这很随意,我找不到任何关于服务内容和服务内容的文档。 将静态文件服务添加为路由表中的条目,使用StaticFileRouteHandler类或这些行中的某些内容应该要好得多。 有没有人有关于这个主题的更多信息或细节? 我想完全控制我的应用程序是什么服务。 PS:我正在使用ASP.NET开发服务器。

如何扩展MVC查找视图的位置

我是一个具有离散模块概念的应用程序。 这些模块将存在于Modules文件夹中。 每个模块在此Modules文件夹下都有一个文件夹。 然后,这些模块文件夹下面会有一个Controllers和Views文件夹,与Areas的工作方式非常相似。 我想扩展/更改搜索的搜索位置,以便当我的模块控制器返回视图时,将搜索新位置。 我认为这需要涉及一个自定义ViewEngine,但我不确定具体细节。 是否有我可以扩展的特定视图引擎,或者我是否需要从头开始编写新的视图引擎。 编写自定义视图引擎是正确的方法,还是有更好的路径?

MVC3发布策略

我已经构建了一个小型MVC3应用程序,它根据环境(Dev / Prod)有一些不同的配置需求。 这主要有两个方面: 权限 :权限通过Active Directory组进行管理,但我的开发环境位于另一个域,然后是我的生产环境: // // GET: /Host/Search [Authorize(Roles = @”WIN2012\Main_v2_Read”)] public ActionResult Search() { return View(); } 数据库连接 :在Dev中,集成安全性很好。 对于生产,应使用服务帐户: 我该怎么处理?

下拉列表 – MVC3

我在ASP MVC3中使用C#。 我有两个来自SQL Server的表。表名是SQL Server 2008中的SMS_User和SMS_Division 。当我创建一个新用户时,我想显示来自sms_division表的分区ID。 SMS_User包含UserName , DivisionID , EmailAddress SMS_Division包含DivisionID , DivisionName 。 控制器代码: UserController : Controller { private NetPerfMonEntities2 db = new NetPerfMonEntities2(); IEnumerableZamZam= db.SMS_Division.Select(c => new SelectListItem { Value = c.divisionid.ToString(), Text = c.divisionid.ToString() } ); } 当我在User Create()VIEW中创建新用户时,我想将DivisonName显示为下拉列表而不是文本框。 我是怎么做到的? @Html.DropDownListFor(model => model.divisionid, (IEnumerable) ViewData[“Divisions”], “”) @Html.ValidationMessageFor(model => model.divisionid) 我有这个错误消息: […]

Elmah忽略了MVC 3站点中的exception

我不知道这是ELMAH或ASP.NET MVC3的问题,还是两者的结合:我已经将我的MVC 3网站配置为使用ELMAH,但是当我在web中启用我的“漂亮”错误页面时.config,ELMAH停止记录exception。 我以前在web.config中只有这个, 但起初我的共享文件夹中没有Error.cshtml视图:当抛出其他exception时,ELMAH会记录缺少错误视图的exception。 添加Error.cshtml视图后,ELMAH不再记录任何exception。 我猜我需要配置MVC来以不同的方式处理exception,所以它们被ELMAH选中,并且ASP.NET最终会启动并显示错误.htm页面。 我怎么做? 或者我使用MVCexception和/或ELMAH错误?

C#mvc3将sitemap.xml重定向到控制器操作

我想将针对www.domain.com/sitemap.xml的网站上的每个呼叫重定向到控制器操作。 我怎样才能做到这一点? 到目前为止我已经有了这个,但返回的状态代码是302.我想用它返回200状态,但仍然重定向/重写为控制器动作。 我问的原因是我希望每次调用所提到的url重定向到一个控制分数。 控制器执行一些foo生成xml站点地图。 然后需要返回此控制分数的输出。 protected void Application_BeginRequest() { //Check if an call for the sitemap.xml has been made if (Request.Path == “/sitemap.xml”) { Response.RedirectToRoute(“XmlSitemap”); } }

ASP.Net MVC DllImport BadImageFormatException 32bit / 64bit

我有下面的代码抛出BadImageFormatException 。 它加载的DLL是32位。 Web服务器正在运行Windows 64位,但应用程序池设置为启用32位。 有什么方法可以让这个工作吗? public class HomeController : Controller { [DllImport(“CDCrypt.dll”)] [return: MarshalAs(UnmanagedType.LPStr)] public static extern String Encrypt ([MarshalAs(UnmanagedType.LPStr)] String aName); [DllImport(“CDCrypt.dll”)] [return: MarshalAs(UnmanagedType.LPStr)] public static extern String Decrypt ([MarshalAs(UnmanagedType.LPStr)] String aName); public ActionResult Index() { try { ViewBag.EncryptString = Encrypt(“test”); } catch (Exception e) { ViewBag.EncryptString = “Stack Trace\r\n:” + “\r\nException: ” […]