asp.Net 3階層アーキテクチャ+linq to entity実装


本来はlinq to entity+普通の3層アーキテクチャでやるつもりでしたが、entityエンティティを使うと3層はあまり役に立たないようです.
まず、DALレイヤを定義します.
 

  
  
  
  
  1. public static bool add(user_info model,string name,string pass,string truename,int power) 
  2.       { 
  3.           model.User_info_name = name; 
  4.           model.User_info_password = pass; 
  5.           model.User_true_name = truename; 
  6.           model.Power_id = power; 
  7.           db.user_info.AddObject(model); 
  8.           return SaveChangesWithDB(); 
  9.       } 
  10.  
  11.       public static bool add2(user_info model) 
  12.       { 
  13.           db.user_info.AddObject(model); 
  14.           return SaveChangesWithDB(); 
  15.       } 

BLLレイヤーの再定義:
 

  
  
  
  
  1. public static bool add(user_info model, string name, string pass, string truename, int power) 
  2.        { 
  3.            return DAL.Userinfo.add(model,name,pass,truename,power); 
  4.        } 
  5.  
  6.        public static bool add2(user_info model) 
  7.        { 
  8.            return DAL.Userinfo.add2(model); 
  9.        } 

最後にWEB層の下で引用:
 

  
  
  
  
  1. protected void Button1_Click(object sender, EventArgs e) 
  2.    { 
  3.        string username = this.name.Text; 
  4.        string password = this.pass.Text; 
  5.        string truename = this.tname.Text; 
  6.        int powerid = 1; 
  7.        user_info model = new user_info(); 
  8.        BLL.Userinfo bl = new BLL.Userinfo(); 
  9.        BLL.Userinfo.add(model,username,password,truename,powerid); 
  10.  
  11.        user_info model2 = new user_info(); 
  12.        model2.User_info_name = username; 
  13.        model2.User_info_password = password; 
  14.        model2.User_true_name = truename; 
  15.        model2.Power_id = 1; 
  16.        BLL.Userinfo.add2(model2); 
  17.    }