Tag: asp.net mvc

Parallel.ForEach错误HttpContext.Current

这个方法 – doDayBegin(item.BranchId)需要很长时间才能执行。 所以我使用Parallel.ForEach执行它。 当我使用正常的foreach循环时它的工作正常,但当我使用Parallel.ForEach它显示此错误 你调用的对象是空的。 public ActionResult Edit([DataSourceRequest] DataSourceRequest request) { try { JavaScriptSerializer js = new JavaScriptSerializer(); List _listDB0010020Vm = new List(); string dataDB0010020vm = Request.Form[“griddetailsvm”]; if (!string.IsNullOrEmpty(dataDB0010020vm)) { _listDB0010020Vm = js.Deserialize<List>(dataDB0010020vm). Where(d => d.IsValid == “YES”).ToList(); } DateTime start = DateTime.UtcNow; Parallel.ForEach(_listDB0010020Vm, item => { doDayBegin(item.BranchId); }); DateTime end = DateTime.UtcNow; TimeSpan […]

通过运行asp.net mvc Web应用程序的IIS访问映射驱动器

我在虚拟机(Windows Server 2012 R2)中的IIS 8服务器上部署了一个asp.net mvc Web应用程序。 在此虚拟机Windows Server 2012 R2中,azure文件存储被映射为网络驱动器。 现在我的asp.net mvc Web应用程序需要通过C#System.IO代码读取此映射驱动器的文件和文件夹。 默认情况下,IIS不允许访问映射的驱动器。 这就是Web应用程序抛出System.IOexception的原因 “找不到指定的路径Z:\” 。 我还尝试传递”\\\\{storage-name}.file.core.windows.net\\{fileshare-name}但仍未成功。 有人可以指导我在IIS和Web应用程序中进行正确的配置和设置吗?

如何创建Expression <Func >;

如果我有一个模型对象,是否可以创建Expression<Func>() ,它可以在不同的htmlHelpers中使用(例如在CheckBoxFor() ) this HtmlHelper htmlHelper 和财产的名称(通过反思)。

ASP.NET MVC ViewModel和DropDownList

我的ViewModel中有2个属性 class ViewModel1 { Dictonary PossibleValues {get;set;}//key/value int SelectedKey {get;set} } 我想使用Html.DropDownListFor编辑它 我想让MVC自动将数据序列化到ViewModel中或从ViewModel中自动序列化,以便我可以进行以下操作 public ActionResult Edit(ViewModel1 model) … 实现这一目标的最佳方法是什么?

在ASP.NET MVC 3中GZipping内容文件

我使用以下属性来装饰我的BaseController类。 public class OutputCompressAttribute : ActionFilterAttribute { public override void OnActionExecuting(ActionExecutingContext filterContext) { string encodingsAccepted = filterContext.HttpContext.Request.Headers[“Accept-Encoding”]; if (string.IsNullOrEmpty(encodingsAccepted)) return; encodingsAccepted = encodingsAccepted.ToLowerInvariant(); HttpResponseBase response = filterContext.HttpContext.Response; if (encodingsAccepted.Contains(“gzip”)) { response.AppendHeader(“Content-encoding”, “gzip”); response.Filter = new GZipStream(response.Filter, CompressionMode.Compress); } else if (encodingsAccepted.Contains(“deflate”)) { response.AppendHeader(“Content-encoding”, “deflate”); response.Filter = new DeflateStream(response.Filter, CompressionMode.Compress); } } } 问题是,即使这对于视图和每个操作结果都很好,该属性也不适用于项目的/Content文件夹中的/Content 。 我想知道如何使它能够使Content文件夹中的文件使用控制器,或以某种方式绑定或挂钩允许我将这些filter附加到响应头的东西。

如何在ASP.NET MVC 6中继续使用ModelState和RedirectToAction?

我有一个删除对象的方法。 删除不属于视图,并且是“EditReport”中的“删除”按钮。 成功删除“报告”上的重定向后。 [HttpPost] [Route(“{reportId:int}”)] [ValidateAntiForgeryToken] public IActionResult DeleteReport(int reportId) { var success = _reportService.DeleteReportControl(reportId); if (success == false) { ModelState.AddModelError(“Error”, “Messages”); return RedirectToAction(“EditReport”); } ModelState.AddModelError(“OK”, “Messages”); return RedirectToAction(“Report”); } 在ASP.NET MVC 5中,我使用以下属性在方法之间保存ModelState。 我从这里开始: https : //stackoverflow.com/a/12024227/3878213 public class SetTempDataModelStateAttribute : ActionFilterAttribute { public override void OnActionExecuted(ActionExecutedContext filterContext) { base.OnActionExecuted(filterContext); filterContext.Controller.TempData[“ModelState”] = filterContext.Controller.ViewData.ModelState; } } […]

如何删除dbo.AspNetUserClaims和dbo.AspNetUserLogins表(IdentityUserClaim和IdentityUserLogin实体)?

我们的应用程序不需要身份使用的过多“登录”和“声明”function。 如果这些表没有在数据库中创建,那将会很好,但我不想重新实现所有的身份类…… 我假设它是这样的 public ApplicationDbContext : IdentityDbContext { […] protected override void OnModelCreating(DbModelBuilder modelBuilder) { base.OnModelCreating(modelBuilder); modelBuilder.Ignore(); modelBuilder.Ignore(); } } 您会认为这根据function描述有效,但事实并非如此。 AspNetUserClaim和AspNetUserLogins表仍然会被创建。 这样做的正确方法是什么?

Dictionary 使用Automapper映射到对象

下面的代码只针对这个问题 我正在上课 public User class { public string Name{get;set;} public string Age{get;set; } 我有一本字典 Dictionary data= new Dictionary(); data.Add(“Name”,”Rusi”); data.Add(“Age”,”23″); User user= new User(); 现在我想使用Automapper将User对象Automapper到此dictionary 。 Automapper映射对象的属性,但在我的例子中有一个字典和对象。 所以,请建议我怎么做

在ASP.NET中使用dependency injection和工厂模式传递服务

我正在使用ASP.NET Core,我知道框架已经提供了这样的Logging机制,但是使用它来说明我的问题。 我正在使用一种Factory模式来构建Logger类,因为我不知道日志记录的类型(因为它存储在DB中)。 ILogger合同 Log(string msg) 然后,在根据从DB传递的参数创建Logger之后,LoggerFactory将返回ILogger: public class LoggerFactory { public static Contracts.ILogger BuildLogger(LogType type) { return GetLogger(type); } //other code is omitted, GetLogger will return an implementation of the related logger 现在,当我需要使用Logger时,我必须这样做: public class MyService { private ILogger _logger public MyService() { _logger = LoggerFactory.BuildLogger(“myType”); } 但是,我打算在没有任何实例化的情况下保留我的类,我需要在MyService中使用Constructor DI,我需要在Startup上注入所有依赖项: services.AddTransient (); 但这不起作用,我们需要通过一个具体的实现。 如何使用DI来完成这项工作,是否有更好的方法来实现它?

在ASP.NET MVC 3中以编程方式创建routeValues(匿名类型)

假设我们有一个页面,其中包含一些支持从DB搜索的元素,因此在Post Action中我们需要找到哪些元素是活动的,并根据这些创建路由值,如下所示: List SearchParameters = GetFilterParameters(collection); if(SearchParameters.Count > 0) foreach(Parameter item in SearchParameters) { switch(item.Name) { case “Category”: CategoryValue= item.Value; break; case “StartDate”: StartDateValue= item.Value; break; case “Product”: ProductValue= item.Value; break; } return RedirectToAction(“Index”, new {category = CategoryValue, startdate=StartDateValue, product=ProductValue }); 那么有没有办法动态定义routeValues类似于以下Pseudo-Code: var dynamicRoutValues; foreach(Parameter item in SearchParameters) { dynamicRoutValues.Add(item.Name, item.Value) } return RedirectToAction(“Index”, dynamicRoutValues);