将行添加到具有关系的强类型数据集

本文关键字:强类型 数据集 有关系 添加 | 更新日期: 2023-09-27 17:58:46

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

表格

用户:
id int(_I)名称字符串(_F)U_lname字符串U_Case int

案例:
C_id int C_date字符串C_status int

U_Case与C_Status、有关

我想将数据添加到此表中。

公共静态空隙AddNewDluznik(字符串名称,字符串lname,int大小写){MainData。使用者AddUserRow(fname,案例);}

没有rel就行。

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

将行添加到具有关系的强类型数据集

按照您的操作方式,AddUserRow具有以下签名:

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

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

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

或者,如果您使用的是孤立的表,而不是整个数据集,则可以:

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);
}

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

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