是否有将视图模型传递给函数的方法?将查看模型传递给函数
我们有以下代码
Activity a = new Activity();
a.memID = (WebSessions.IsCUser) ? 0 : WebSessions.MemID;
a.caseUserID = (WebSessions.IsCUser) ? WebSessions.CUserID : 0;
a.isMember = !(WebSessions.IsCUser);
a.isUser = (WebSessions.IsCUser);
而且
OpenTask o = new OpenTask();
o.memID = (WebSessions.IsCUser) ? 0 : WebSessions.MemID;
o.caseUserID = (WebSessions.IsCUser) ? WebSessions.CUserID : 0;
o.isMember = !(WebSessions.IsCUser);
o.isUser = (WebSessions.IsCUser);
我想创建,设置这些值,我
GetValuesForUserORMember(*pass in view model*)
{
thisView = *pass in view model*
thisView.memID = (WebSessions.IsCUser) ? 0 : WebSessions.MemID;
thisView.caseUserID = (WebSessions.IsCUser) ? WebSessions.CUserID : 0;
thisView.isMember = !(WebSessions.IsCUser);
thisView.isUser = (WebSessions.IsCUser);
}
使用它做插入函数或更新
Activity a = new Activity();
a.ID = cID;
a.ActivityModDate = date;
GetValuesForUserORMember(a) <---function
ctx.AddToActivities(a);
ctx.SaveChanges();
OpenTask o = new OpenTask();
o.ID = cID;
o.TaskCompletedDate = date;
o.TaskAssingedTo = uID;
GetValuesForUserORMember(o) <---function
ctx.AddToActivities(o);
ctx.SaveChanges();
这些(4)字段对于每个表/视图模型(Activity和OpenTask)完全相同。但是,其他字段在每个表中都不相同。
假设他在.NET 4中工作。但使用动态CS。 – Ronald 2012-03-02 19:00:37
嗯,是的 - 你必须使用支持该解决方案(或任何其他)的版本才能正常工作。但是,现在看到C#4现在已经有1.5年的历史,并且没有提到特定的版本 - 我将假设“当前”。也就是说,如果有人不清楚动态是在C#4中引入的 - 所以如果你的编译器告诉你它不知道动态是什么,那么你就不能使用这个解决方案。 – 2012-03-02 20:07:25
它工作完美! - 谢谢 – 2012-03-02 22:42:15