使用关系向强类型数据集添加行

时间:2011-06-10 10:17:02

标签: c# strongly-typed-dataset

Hello得到了名为DSMain的类型化数据集。

  

用户:
            U_id int             U_fname字符串             U_lname字符串U_Case int

     

案例:
        C_id int C_date string C_status int

U_Case与C_Status相关,

我想在此表中添加数据。

  

public static void   AddNewDluznik(字符串fname,字符串   lname,int case)           {               MainData.User.AddUserRow(fname,lname,   案件);           }

没有rel就行了。

参数'3':无法从'int'转换为'Zefir.DSMain.CaseRow'。

2 个答案:

答案 0 :(得分:2)

您的方式,AddUserRow具有以下签名:

AddUserRow(string fName, string lName, CaseRow case) //note case is of type CaseRow, not int.

您需要引用用户引用的CaseRow表格中的Case

public static void AddNewDluznik(string fName, string lName, int case)
{
    MainData.User.AddUserRow(fName, lName, MainData.Case.FindByC_id(case));
}

或者,如果您正在处理孤立的表,而不是整个DataSet,则可以:

public static void AddNewDluznik(string fName, string lName, int case)
{
     var row = MainData.User.NewUserRow();
     row.U_fname = fName;
     row.U_lname = lName;
     row.U_Case = case; 
     MainData.User.AddUserRow(row);
}

答案 1 :(得分:1)

在使用它时,Case是一个实体,而不是一个int,因此您需要获取用户引用的大小写,并在AddUserRow调用中添加IT作为参数。

Case myCase = <find the case in question>;
MainData.User.AddUserRow(fname, lname, myCase);