我很难为此想出一个标题:)
我有一个连接到 SQL 服务器数据库的 WCF 服务。我使用 ADO.NET 从数据库中检索数据。
在一些简单的操作中,我只是从数据库中检索,然后发回我刚刚获取的 EntityObjects 的 json 表示,它工作正常。但是现在我正在使用一个过程进行更复杂的提取。数据检索工作正常,但过程本身返回的列比实际 EntityObject (Table) 的列多。以此为例:
create table Person
{
Name,
BirthDate
}
// Retrieve Persons from DB with procedure that also calculates each persons actual age!
public List<EntityObject> GetPersons()
{
var personList = new List<EntityObject>();
var dataSet = dbContext.ExceuteProcedure("GET_PERSONS_WITH_AGE", parameters);
var dataTable = dataSet.Tables["result"];
foreach (DataRow row in dataTable.Rows)
{
personList.Add( new PersonEntity
{
Name = (String)row["Name"],
BirthDate = (DateTime)row["BirthDate"],
// Here i want the actual age calculation result, but since the DB-table Person does'nt have this column,
// I can't set it.
}
}
return personList;
}
我是否需要为此创建一个具有此额外变量的 CustomPersonClass?或者我可以在我的 ADO.NET 对象中以某种方式将另一列强制放入 Table Person 中吗?
请考虑到我是 ADO.NET 的新手,如果您在我的示例中看到其他代码错误(以及检索方法),请告诉我。