我正在尝试将业务层添加到我的简单 Web 应用程序中。
EF 为我生成的类,例如User
,Lang
我现在的 BL 是这样的:
public class BLuser
{
public static List<User> allUsers()
{
using (MyEntities ctx = new MyEntities())
{
var users = from us in ctx.Users select us;
return users.ToList<User>();
}
}
public static int getUsersLangId(int id)
{
using (MyEntities ctx = new MyEntities())
{
var langid = (from us in ctx.Users where us.Id == id select us.Lang.Id).FirstOrDefault();
return langid;
}
}
public static void changeUsersLangId(int userId, int langId)
{
using (MyEntities ctx = new MyEntities())
{
var user = (from us in ctx.Users where us.Id == userId select us).FirstOrDefault();
user.LangId = langId;
ctx.SaveChanges();
}
}
public static void addNewUser(int userId)
{
User newUser = new User();
newUser.Id = userId;
newUser.LangId = 0;
using (MyEntities ctx = new MyEntities())
{
ctx.Users.Add(newUser);
ctx.SaveChanges();
}
}
}
然后在我后面的代码中,我可以这样称呼它:
BLuser.changeUsersLangId(1,1);
这是好方法(尤其是静态方法)吗?我觉得我可能会错过一些东西,但在那种情况下,我不必因为静态方法而关心 BL 对象的持久性。
是否有一些有用的教程,我发现的是相当复杂的文章,新手不容易理解。
谢谢。