最近,我为我的 MVC 4 应用程序更新了几个引用的程序集并升级到 MVC 5.1。不确定这是否与它有关。
模型
[Display(Name = "Start")]
[DisplayFormat(DataFormatString = "{0t}")]
public System.DateTime StartDateTime { get; set; }
Run Code Online (Sandbox Code Playgroud)
现在我在一个简单的 razor html helper 上遇到一个奇怪的错误
@Html.DisplayFor(model => model.StartDateTime)
Run Code Online (Sandbox Code Playgroud)
给出错误:Input string was not in a correct format。
如果您查看调试器中该字段的值,它是 System.DateTime 类型并显示: 2/28/2014 10:17 AM
更改为 a@Html.EditorFor会正确呈现数据时间。
我的 DisplayTemplates 文件夹是空的。
堆:
[FormatException: Input string was not in a correct format.]
System.Text.StringBuilder.AppendFormat(IFormatProvider provider, String format, Object[] args) +14321177
System.String.Format(IFormatProvider provider, String format, Object[] args) +136
System.Web.Mvc.Html.TemplateHelpers.TemplateHelper(HtmlHelper html, ModelMetadata metadata, String …Run Code Online (Sandbox Code Playgroud) 我是仿制药的新手,但我知道我需要用它来帮助保持干燥:)
我正在尝试创建一个类,将许多不同类型的列表转换为由下拉列表控件使用但不能使其工作的公共类.我在下面的方法中显示了两个尝试这个的选项,试图让每个工作(foreach循环和linq),但无济于事.
private static IEnumerable<ddlOptions> GetDDLOptionsViewModel<T>(List<T> genericList, string strPropName)
{
// option A: ForEach loop
Type type = genericList.GetType();
var IdProperty = type.GetProperty("Id");
var DisplayNameProp = type.GetProperty(strPropName);
List<ddlOptions> options = new List<ddlOptions>();
foreach (var l in genericList)
{
options.Add(new ddlOptions
{
Id = IdProperty.GetValue(l, null),
DisplayName = DisplayNameProp.GetValue(l, null)
});
}
return options;
// option B - LINQ
return from l in genericList
select new ddlOptions
{
Id = l.Id,
DisplayName = l.strPropName
};
}
Run Code Online (Sandbox Code Playgroud) 我是一个相当初级的C#开发人员,请原谅我,如果这是微不足道的,但我在下面指出的代码行中提出了这个错误"无效的初始化成员声明符".
有人可以解释这意味着什么,我如何解决/实现这个结果?我的所有数据注释都已在PODetail中应用一次,这就是为什么我不想在这里重复这些属性.
public class PODetailsListViewModel : IViewModelList<PODetail, PODetailsListViewModel>, IEntity
{
public int Id { get; set; }
public string EntityDescription
{
get
{ return this.Id.ToString(); }
}
public PODetail PODetail { get; set; }
public IEnumerable<PODetailsListViewModel> ConvertClassToViewModel(IEnumerable<PODetail> poDetails)
{
IEnumerable<PODetailsListViewModel> contactGrid =
from l in poDetails.ToList()
select new PODetailsListViewModel()
{
Id = l.Id,
PODetail.POHeaderId = l.POHeaderId, <===== ERROR on this Line
....
};
return contactGrid;
}
Run Code Online (Sandbox Code Playgroud) C#MVC中静态字段的生命周期是什么:
private static InventoryMgmtContext _dbContext = new InventoryMgmtContext();
public ManageWorkOrdersAppServ()
: base(new WorkOrderHeaderRepository(_dbContext ))
{
_workOrderHeaderRepository = new WorkOrderHeaderRepository(_dbContext);
_workOrderDetailRepository = new WorkOrderDetailRepository(_dbContext);
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,_dbContext何时会死?这是我的另一个问题的后续行动,我无法澄清.