[英]How to Save an array of Objects (just the fields) to a DB using DataTable?
我有一個Web服務(SOAP),從那里可以獲得ArrayOfHumans(對象數組),我可以獲取該數組,但是我很難把它保存到DB,這很簡單(或者可能不是那么簡單)我只是無知!)是從數組中獲取一個對象,然后獲取一個屬性的值並將其保存在表列中。 我有以下代碼:
public JsonResult returnAllHumans()
{
TestService.TestServiceSoapClient soapClient = new TestService.TestServiceSoapClient();
object[] humansfromWS = soapClient.GetAllHumans();
System.Data.DataTable table = new System.Data.DataTable();
table.Columns.Add("FirstName", typeof(string));
table.Columns.Add("LastName", typeof(string));
table.Columns.Add("Gender", typeof(string));
table.Columns.Add("Age", typeof(int));
for (int i = 0; i < humansfromWS.Length; i++){
table.Rows.Add(new object[] {
humansfromWS[i].Age(); (And my problem is here!)
我不知道我要怎么做才能將其從陣列中刪除?有人可以指出我正確的方向嗎?
humansfromWS[i]
是一個對象,沒有Age
方法。 您必須將其轉換為正確的類型。
請查看有關Add
方法的文檔。 有兩種版本的Add
。 一個采用DataRow
,另一個采用單行的值數組。
public JsonResult returnAllHumans()
{
TestService.TestServiceSoapClient soapClient = new TestService.TestServiceSoapClient();
object[] humansfromWS = soapClient.GetAllHumans();
System.Data.DataTable table = new System.Data.DataTable();
table.Columns.Add("FirstName", typeof(string));
table.Columns.Add("LastName", typeof(string));
table.Columns.Add("Gender", typeof(string));
table.Columns.Add("Age", typeof(int));
for (int i = 0; i < humansfromWS.Length; i++){
var humanFromWS = humansfromWS[i];
table.Rows.Add(new object[] {
humansFromWS.FirstName,
humansFromWS.LastName,
humansFromWS.Gender,
humanFromWS.Age});
}
要么
for (int i = 0; i < humansfromWS.Length; i++){
var humanFromWS = humansfromWS[i];
var row = table.NewRow();
row["Age"] = humanFromWS.Age;
row["FirstName"] = humanFromWS.FirstName;
row["LastName"] = humanFromWS.LastName;
row["Gender"] = humanFromWS.Gender;
table.Rows.Add(row);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.