Questions tagged «asp.net-mvc»

ASP.NET MVC框架是一个开源Web应用程序框架和工具,可实现针对Web应用程序量身定制并基于ASP.NET技术基础的模型-视图-控制器(MVC)模式版本。


16
在某些情况下禁用“必需的验证”属性
我想知道是否可以在某些控制器操作中禁用“必需的验证”属性。我想知道这是因为在我的一种编辑表单上,我不需要用户为他们先前已经指定的字段输入值。但是,我然后实现了一种逻辑,即当他们输入值时,它会使用一些特殊的逻辑来更新模型,例如对值进行哈希处理等。 关于如何解决此问题有任何建议吗? 编辑: 是的,客户端验证在这里是一个问题,因为它将不允许他们在不输入值的情况下提交表单。

9
如何配置web.config以允许任何长度的请求
我正在建立一个站点,在该站点中我想从textarea元素的值创建文件客户端。 我有执行此操作的代码,但出现此错误 HTTP错误404.15-找不到请求过滤模块配置为在查询字符串过长的情况下拒绝请求。 有没有一种方法可以覆盖它,以便我能够处理任何大小的请求? 如果没有,有没有一种方法可以在不使用filesystem / active x对象的情况下生成客户端文件? 谢谢

2
ASP.NET MVC中的四个文件结果之间有什么区别
ASP.NET具有四种不同类型的文件结果: FileContentResult:将二进制文件的内容发送到响应。 FilePathResult:将文件的内容发送到响应 FileResult:返回二进制输出以写入响应 FileStreamResult:使用Stream实例将二进制内容发送到响应 这些描述来自MSDN,除了FileStreamResult之外,前三个听起来完全相同。那么它们之间有什么区别呢?

11
如何将多个参数传递给ASP.Net Web API GET?
我正在使用.Net MVC4 Web API来(希望)实现RESTful api。我需要向系统传递一些参数,并让它执行一些操作,然后返回对象列表作为结果。具体来说,我传递了两个日期并返回了两个日期之间的记录。我还跟踪返回的记录,以便后续调用不会在系统中得到重新处理。 我考虑了几种方法: 将参数序列化为一个JSON字符串,然后在API中将其分离。 http://forums.asp.net/t/1807316.aspx/1 在查询字符串中传递参数。 将多个查询参数传递给静态API的最佳方法是什么? 定义路径中的参数:api / controller / date1 / date2 使用POST可以使我通过参数传递对象。 由于Web API(当前)支持ODATA,因此正在研究ODATA。我还没有做很多事情,所以我不太熟悉。 似乎正确的REST做法表明何时提取数据,应该使用GET。但是,GET也应该是无效的(不产生副作用),并且我想知道我的具体实现是否违反了该规定,因为我在API系统中标记了记录,因此产生了副作用。 这也使我想到了支持可变参数的问题。如果输入参数列表发生更改,那么如果必须经常为选择3重新定义您的路线,那将很麻烦。如果在运行时定义参数会发生什么... 无论如何,对于我的特定实现,哪种选择(如果有)似乎最好?

4
启用双重转义有危险吗?
我有一个ASP.NET MVC应用程序,它的路由允许通过/ search / <searchterm>搜索内容。 当我提供“ search / abc”时,效果很好,但是当我提供“ / search / a + b + c”(正确的url编码)时,IIS7拒绝请求,并显示HTTP错误404.11(请求过滤模块配置为拒绝包含双重转义序列的请求)。首先,为什么要这样做?如果它是URL的一部分,但似乎不是查询字符串的一部分,则似乎只会抛出错误(/ transmit?q = a + b + c可以正常工作)。 现在,我可以在web.config的安全性部分中启用双重转义请求,但是由于我不了解其含义,而且我也很犹豫这样做,服务器也为什么不将请求“ a + b + c”拒绝为URL的一部分,但接受为查询字符串的一部分。 有人可以解释并给出建议怎么办吗?
136 c#  asp.net-mvc  iis-7 

5
ASP.NET:在应用程序的启动前初始化阶段不能调用此方法
我正在尝试在IIS 6.0上运行ASP.NET MVC 3站点。 当前,当我从服务器请求页面时,出现以下错误: 解析器错误消息:在应用程序的启动前初始化阶段不能调用此方法。 在这条线上: <add name="MyMembershipProvider" type="NS.MyMembershipProvider" connectionStringName="MyDatabase" applicationName="/MySite"/> 我完全感到困惑,对ASP.NET应用程序生命周期了解不多,更不用说6.0和7.0之间的区别了。阅读有关它的MSDN页面似乎并没有太大帮助。 有没有人有任何见解或任何好的调查链接?:)

21
具有相同键的项目已被添加
每当我提交表单时,都会收到此错误,并且由于以下原因未调用action方法: 具有相同键的项目已被添加。 以及异常详细信息: [ArgumentException:已添加具有相同键的项。] System.ThrowHelper.ThrowArgumentException(Exception资源资源)+52 System.Collections.Generic.Dictionary`2.Insert(TKey键,TValue值,布尔值添加)+9382923系统.Linq.Enumerable.ToDictionary(IEnumerable`1源,Func`2 keySelector,Func`2 elementSelector,IEqualityComparer`1比较器)+252 System.Linq.Enumerable.ToDictionary(IEnumerable`1源,Func`2 keySelector,IEqualityComparer`1比较器)+91 System.Web.Mvc.ModelBindingContext.get_PropertyMetadata()+228 System.Web.Mvc.DefaultModelBinder.BindProperty(ControllerContext controllerContext,ModelBindingContext bindingContext,PropertyDescriptor propertyDescriptor)+392 System.Web.Mvc.DefaultModelBinder.BindProperties(ControllerContext controllerContext,ModelBindingContext bindingContext)+147 System.Web.Mvc.DefaultModelBinder.BindComplexElementalModel(ControllerContext controllerContext,ModelBindingContext bindingContext,对象模型)+98 System.Web.Mvc.DefaultModelBinder.BindComplexModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+2504 System.Web.Mvc.DefaultModelBinder.BindModel(ControllerContext controllerContext,ModelBindingContext bindingContext)+548 System.Web.Mvc.ControllerActionInvoker.GetParameterValue(ControllerContext controllerContext,ParameterDescriptor parameterDescriptor)+473 System.Web.Mvc.ControllerActionInvoker.GetParameterValues(ControllerContext controllerContext,ActionDescriptor actionDescriptor)+181 System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext,String actionName)+830 System.Web.Mvc.Controller.ExecuteCore()+136 System .Web.Mvc.ControllerBase.Execute(RequestContext requestContext)+111 System.Web.Mvc.ControllerBase.System.Web.Mvc.IController.Execute(RequestContext requestContext)+39 System.Web.Mvc。<> c__DisplayClass8.b__4()+65 System.Web.Mvc.Async。<> c__DisplayClass1.b__0()+44 System.Web.Mvc.Async。<> c__DisplayClass8`1.b__7(IAsyncResult _ )+42 …
135 asp.net-mvc 

4
MVC 5项目和Web Api项目之间的区别
我是ASP.NET MVC和Web API的新手,正在尝试获取基础知识。据我所知,我们在VS 2013项目模板,命名为MVC,Web API和Both of them together。 我遍历了教程,了解到我们可以单独使用MVC以及使用Web API模板来制作API。 那么,基于体系结构和用法,它们之间有什么区别?

7
C#6.0功能不适用于Visual Studio 2015
我正在使用C#6.0测试Visual Studio 2015,但是语言功能无法正常工作。在MVC Web应用程序中,将编译以下代码: if (!string.IsNullOrWhiteSpace(Model.Profile?.TypeName)) { // More logic here... } 但是,当我通过Debug和IIS Express运行应用程序时,出现以下错误: CS1525:无效的表达式术语“。” 如何启用这些功能?

5
ASP.NET MVC歧义操作方法
我有两种冲突的操作方法。基本上,我希望能够使用两条不同的路线(通过项的ID或项的名称及其父项(在不同的父项中,项可以具有相同的名称))进入同一视图。搜索词可用于过滤列表。 例如... Items/{action}/ParentName/ItemName Items/{action}/1234-4321-1234-4321 这是我的动作方法(也有Remove动作方法)... // Method #1 public ActionResult Assign(string parentName, string itemName) { // Logic to retrieve item's ID here... string itemId = ...; return RedirectToAction("Assign", "Items", new { itemId }); } // Method #2 public ActionResult Assign(string itemId, string searchTerm, int? page) { ... } 这是路线... routes.MapRoute("AssignRemove", …

9
Web API放置请求生成Http 405方法不允许错误
这是PUT对我的Web API上的方法的调用-方法的第三行(我从ASP.NET MVC前端调用Web API): client.BaseAddress是http://localhost/CallCOPAPI/。 这里是contactUri: 这里是contactUri.PathAndQuery: 最后,这是我的405回复: 这是我的Web API项目中的WebApi.config: public static void Register(HttpConfiguration config) { config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); config.Routes.MapHttpRoute( name: "DefaultApiGet", routeTemplate: "api/{controller}/{action}/{regionId}", defaults: new { action = "Get" }, constraints: new { httpMethod = new HttpMethodConstraint("GET") }); var …

8
ASP.NET MVC是/否具有强绑定模型MVC的单选按钮
有谁知道如何将“是/否”单选按钮绑定到ASP.NET MVC中强类型模型的布尔属性。 模型 public class MyClass { public bool Blah { get; set; } } 视图 <%@ Page Title="blah" Inherits="MyClass"%> <dd> <%= Html.RadioButton("blah", Model.blah) %> Yes <%= Html.RadioButton("blah", Model.blah) %> No </dd> 谢谢 解: 感谢Brian的指导,但这与他写的相反。因此- <%@ Page Title="blah" Inherits="MyClass"%> <dd> <%= Html.RadioButton("blah", !Model.blah) %> Yes <%= Html.RadioButton("blah", Model.blah) %> No …

9
Visual Studio 2017-Node.JS服务器进程-是否关闭?
我正在Visual Studio 2017中使用ASP.NET App,并且注意到Node.JS:服务器端Javascript进程运行在1.3GB至1.8GB的内存中。我的IIS工作进程是VS 2015中的正常大小。 我的应用程序不包含任何Node.JS库。我不知道如何关闭此Node.JS:服务器端Javascript进程。我没有用的东西占用了太多的内存。 除了卸载VS 2017并切换回VS 2015之外,还有其他方法可以消除这种情况吗? 在Task Manager中杀死主进程不会影响VS中的任何内容,但是,如果我转到“详细信息”选项卡并杀死单个正在运行的进程,它将使Visual Studio崩溃。我拍了一段视频,了解终止进程并运行本地网页后发生的情况(抱歉,质量有限,图像大小限制为2MB):

5
为每个对象创建通用存储库与特定存储库的优势?
我们正在开发ASP.NET MVC应用程序,现在正在构建存储库/服务类。我想知道创建所有存储库都实现的通用IRepository接口是否有任何主要优势,而每个存储库都有自己的唯一接口和方法集。 例如:通用的IRepository接口可能看起来像(从此答案中获取): public interface IRepository : IDisposable { T[] GetAll<T>(); T[] GetAll<T>(Expression<Func<T, bool>> filter); T GetSingle<T>(Expression<Func<T, bool>> filter); T GetSingle<T>(Expression<Func<T, bool>> filter, List<Expression<Func<T, object>>> subSelectors); void Delete<T>(T entity); void Add<T>(T entity); int SaveChanges(); DbTransaction BeginTransaction(); } 每个存储库都将实现此接口,例如: 客户资料库:IRepository 产品存储库:IRepository 等等 我们在先前项目中遵循的替代方法是: public interface IInvoiceRepository : IDisposable { EntityCollection<InvoiceEntity> GetAllInvoices(int …

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.