是否有將視圖模型傳遞給函數的方法?將查看模型傳遞給函數
我們有以下代碼
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