搞不懂了,再看别人写的。net mvc DDD 程序,求教
看到一个界面cshtml 有这样一句
@Html.EditorFor(m=>m.Model.Details) 在html上尽然显示一个列表,而且还带翻页功能,而且还可以自己添加删除修改没行内容,这不科学。求神回答。小弟就怎么点分了。
其中:Model为
[MetadataType(typeof(PaymentFeeSheetDTOMetadata))] //1.这句话是什么意思?
public class PaymentFeeSheetDTO : CostSheetDTOBase
{
public SheetTypeOption SheetType { get; set; }
public CounterpartyDTO Counterparty { get; set; }
public IList<PaymentFeeDetailDTO> Details { get; set; }
public double Amount { get; set; }
public AttachedSheetDTO AttachedSheet { get; set; }
public PaymentFeeSheetDTO()
{
Counterparty = new CounterpartyDTO();
AttachedSheet = new AttachedSheetDTO();
}
}
其中 PaymentFeeSheetDTOMetadata 为
public class PaymentFeeSheetDTOMetadata : CostSheetDTOBaseMetadata
{
//[LocalizedDisplay(ConstVariables.SheetType)]
[SelectInGroup(RenderAs=RenderAsOption.RadioButton)]
public SheetTypeOption SheetType { get; set; }
public CounterpartyDTO Counterparty { get; set; }
//这里的一系列[xx(xx=xx,xx=xx)]又是什么东西?
[GridView(DataRowType = typeof(PaymentFeeDetailDTO), SelectionMode = SelectionModeOption.Multiple, NewItemPartialView = "PaymentFeeDetail", NewItemAction = "NewPaymentFeeDetail", ListItemAction = "ListPaymentFeeDetails")]
[ContextMenu]
[DialogAction(Name = "Edit", Icon = IconOption.Edit, PartialView = "PaymentFeeDetail")]
[Button(Container = "Edit", Action = "EditPaymentFeeDetail", Icon = IconOption.Save, IsPrimary = true, Name = "Save")]
[ContextAction(Name = "Delete", Action = "DeletePaymentFeeDetail", Icon = IconOption.Delete)]
public IList<PaymentFeeDetailDTO> Details { get; set; }
public AttachedSheetDTO AttachedSheet { get; set; }
public double Amount { get; set; }
}
[解决办法]
一个是Lambda表达式
一个是Attribute
[解决办法]
你在上面点转到定义看看。
这不是系统类库。你先搞清楚是什么库中的类,然后要么看源代码,要么看文档。
[解决办法]
@Html.EditorFor(m=>m.Model.Details)
这个倒是可以告诉你,MVC的HtmlHelper类实现的。
http://www.cnblogs.com/majiang/archive/2012/11/20/2779324.html
[解决办法]
你看看那个EditorFor到底指向了哪个方法
[解决办法]
应该是大神实现了一个在线的EXCEL编辑器吧