Tag: asp.net mvc

创建扩展方法以生成打开和关闭标记,如Html.BeginForm()

我想知道是否可以创建一个具有类似于Html.BeginForm()的function和行为的扩展方法,因为它会生成一个完整的Html标记,我可以在标记内具体说明它的内容。 例如,我可以有一个视图: 在我尝试使用此问题中的示例生成的function的上下文中,此function非常有用 这将使我能够为我将要的类型创建容器 <% using(Html.BeginDiv(myType, tag) %> 我意识到这会产生无效的XHTML,但我认为可能有其他好处超过这个,特别是因为这个项目不需要XHTMLvalidationW3C标准。 谢谢 戴夫

使用LINQ按多个属性分组并求和

我有一个项目集合,这里是: AgencyID VendorID StateID Amount Fee 1 1 1 20.00 5.00 1 1 1 10.00 2.00 1 1 1 30.00 8.00 2 2 1 20.00 5.00 2 2 1 5.00 5.00 1 1 2 20.00 5.00 2 2 2 20.00 5.00 2 2 2 40.00 9.00 1 2 2 35.00 6.00 1 2 2 12.00 […]

MemoryCache在MVC中的用途是什么?

我对MemoryCache的正确使用有点困惑。 应该/可以用来加载静态信息以节省重复呼叫吗? 应该/可以用它来跨多个操作方法在视图上保存数据吗? 我有一个实例,我不想使用数据存储来填充和保存我的视图中的数据。 我开始使用MemoryCache工作正常,但我开始怀疑这是否是正确的方法。 我担心的是如果我使用相同的MemoryCache在同一页面上有多个用户会发生什么?

asp.net mvc中db上下文类的用途是什么

我是mvc的新手并且已经做了一些教程来掌握它,但在其中一些教程中,我遇到了一个带有EF6 教程的DbContext类asp.net mvc5的例子 我曾尝试研究DbContext Class的信息,但无法获得任何让我更聪明的信息! 所有我能找到的更多相同的教程,信息很少我也在msdn DbContext Class上查了一下这个类。 我之前的教程没有db上下文类,它工作正常,我的问题是我需要使用上下文类,使用DbContext类有什么好处? 任何帮助将不胜感激谢谢。

使用Windows身份validation时,MVC5重定向到Login.aspx

从MVC 4升级到MVC 5后,我的应用程序(从Visual Studio中启动时)会出现以下错误。 值得注意的是,我在同一个项目中托管MVC5和WebAPI2项目,因为可能存在干扰。 我还安装了dotnetopenauth nuget包(我已删除): Server Error in ‘/’ Application. The resource cannot be found. Description: HTTP 404. The resource you are looking for (or one of its dependencies) could have been removed, had its name changed, or is temporarily unavailable. Please review the following URL and make sure that it is spelled […]

为什么CSS和JS文件会绕过Asp.Net MVC路由?

我收到了一个用Asp.Net MVC4构建的原型应用程序。 它目前正在使用NInject,ServiceLocator等全部替换默认控制器工厂。 问题是,通过替换默认控制器工厂,对JS文件的请求被视为对控制器和操作的合法请求。 因此,查看Visual Studio创建的默认模板,路由配置如下所示: public static void RegisterRoutes(RouteCollection routes) { routes.IgnoreRoute(“{resource}.axd/{*pathInfo}”); routes.MapRoute( name: “Default”, url: “{controller}/{action}/{id}”, defaults: new { controller = “Home”, action = “Index”, id = UrlParameter.Optional } ); } 看了之后,我问自己:为什么“/Scripts/jquery.js”的请求不会被Asp.Net MVC解释? 我的意思是,为什么它不认为“脚本”是一个控制器而“jquery.js”是一个动作? 因为如果禁用控制器工厂覆盖,项目可以工作,我只能假设默认工厂负责这种检查。 这意味着“/ Scripts/jquery.js”确实传递给控制器​​工厂,这是我真正不知道的事情。 谁能对此有所了解? 当覆盖控制器工厂以避免此类问题时,应该采取什么样的处理?

具有MVC站点的某些要求的细化权限

我不喜欢内置的会员提供商。 我决定自己动手。 我正在努力想出一个在动作级别执行授权的好方法。 以下是我要求的要求: 属性用法 – 我喜欢这个,因为它在调用堆栈中控制得非常高,并且是组织权限的好地方。 没有神奇的字符串 – 这就是我偏离当前角色提供者的原因。 我不想留下那些不能轻易重命名的字符串。 权限应该由另一个权限组成。 示例: ReadWrite具有Read权限。 就像或用enum一样。 注意:有些人认为这套要求过于宽泛(见评论)。 我不这么认为,我认为它们相当简单。 最大的showstopper是属性使用。 只能有“常量表达式,typeof表达式或属性参数类型的数组创建表达式”。 我想也许有这样的东西让操作具有静态访问权限。 在属性内部,它会将int“转换”为实际的Permission或者……: public static class Operations { public static class SectionA { public const int Read = 1; public const int ReadWrite = 2; } public static class SectionB { // … and so on… } […]

何时使用JsonResult而不是ActionResult

我一直无法找到关于这个问题的具体答案。 我已经查看了这个问题以及其他地方的post和后续post,但我真正读到的只是JsonResult有一个硬编码的内容类型,并且确实没有任何性能提升。 如果两个结果都可以返回Json,为什么需要在ActionResult上使用JsonResult。 public ActionResult() { return Json(foo) } public JsonResult() { return Json(bar) } 任何人都可以解释ActionResult无法完成工作并且必须使用JsonResult的情况。 如果没有,为什么JsonResult首先存在。

.NET 4 MVC 2使用注释警告而不是错误进行validation

我使用.NET 4和MVC 2来validationAnnotations。 是否有一个(简单的)解决方案来回复警告而不是错误 ? 这样我就能得到一个绿色或黄色的方框,上面写着“你不应该使用这些内容,但你可以”。 非常感谢提前! 🙂 编辑: 请注意我已经能够通过ErrorMessage丢弃错误但我还想要一些像WarningMessage或InfoMessage这样的东西,以便用户只收到警告但可能会继续。 这有解决方案吗? Pseudocode将是:( 请注意“伪”,因为WarningMessage (不幸的是)不是有效的类) public class Person { [StringLength(50)] [Required(ErrorMessage = “You MUST enter a name!”)] public string Name { get; set; } [Required(WarningMessage = “It is recommended to fill out the age but you may leave it out)] public int Age { get; set; […]

ASP.NET MVC:从数据库加载图像并在视图中显示它们

我们的数据库中有一些图像,想要在视图中显示它们。 我找到了两种方法 – 第一种 :我们在控制器中创建动作方法,从数据库获取图像并返回FileContentResult: public ActionResult GetImage( int id ) { var imageData = …get bytes from database… return File( imageData, “image/jpg” ); } 代码在视图中: ‘ /> 第二种方法是使用HttpHandler: public void ProcessRequest(HttpContext Context) { byte [] b = your image…; Context.Response.ContentType = “image/jpeg”; Context.Response.BinaryWrite(b); } 和视图中的代码: 第一个问题是实现此function的最有效(工作更快)方式是什么(以及为什么它更快地工作)? 第二个问题 – 当我们第一次调用action方法返回此视图时,有一种方法可以直接将图像放入我们的视图中吗? 我的意思是在动作方法中我们从数据库中获取图像列表并将它们作为列表传递给视图,并在视图中使用此代码: 该代码必须直接从模型中将图像放入视图中。