确定是否有新请求或编辑现有记录

时间:2012-07-06 14:14:03

标签: c# asp.net entity-framework

我有一个向AD验证的登录页面,效果很好。登录后有一个服务请求的页面,用户可以保存他们的请求并在以后返回它完成或提交它(如果已完成)。这两个操作在记录中设置了一个标志(保存或提交)。当用户登录时,我可以向他们显示他们保存的请求列表。现在,如果他们点击已保存的请求链接,我可以通过URL传递记录ID ....但后来我卡住了。 我是否应该有一个不同的页面来编辑/更新记录,还是应该再次使用新的请求页面?如果我使用同一页面,那么最好的方法是什么?我的印象是会有很多“如果...返回......其他”,使代码难以阅读。另一方面......如果我做2页,任何更改或更新都需要同时进行。 我正在使用VS2010和EF4。在这种环境下的第一个项目,不知道这里的最佳做法。

1 个答案:

答案 0 :(得分:0)

我是重复使用页面的粉丝;有一些if / else,但不是全部。例如,在更新实体时,您可以执行以下操作:

SomeEntity entity;
bool adding = false;

if (key > 0)
   entity = db.Entities.FirstOrDefault(i => i.Key == key);
if (entity == null)
{
   entity = new SomeEntity { initialvalue = "X" };
   adding = true;
}

entity.Z = someValue;
//set other props

if (adding)
   db.Entities.AddObject(entity);
db.SubmitChanges();

就UI而言,是的,有一些显示/隐藏,但努力方面会有更少。