[英]c# linq: how to submit object to database as a new record
我有以下對象:
namespace LearnLINQ1
{
[Table(Name="testMe")]
public class SubmitTest
{
[Column(Name="FirstName")]
public string FirstName { get; set; }
[Column(Name = "LastName")]
public string LastName { get; set; }
[Column(Name = "PhoneNumber")]
public int PhoneNumber { get; set; }
linqLayerDataContext db;
}
}
而且我在構造函數中使用了相同的東西:
namespace LearnLINQ1
{
[Table(Name="testMe")]
public class SubmitTest
{
[Column(Name="FirstName")]
public string FirstName { get; set; }
[Column(Name = "LastName")]
public string LastName { get; set; }
[Column(Name = "PhoneNumber")]
public int PhoneNumber { get; set; }
linqLayerDataContext db;
//constructor
public SubmitTest(string first, string last, int phone, linqLayerDataContext db)
{
this.FirstName = first;
this.LastName = last;
this.PhoneNumber = phone;
this.db = db;
}
}
}
我正在使用以下代碼實例化該對象,並嘗試將其作為新記錄添加到數據庫中:
SubmitTest test = new SubmitTest { FirstName = "Jeremy", LastName = "Stafford", PhoneNumber = 23 };
db.testMes.InsertOnSubmit(test);
但即時通訊收到錯誤:
錯誤1'System.Data.Linq.Table.InsertOnSubmit(LearnLINQ1.testMe)'的最佳重載方法匹配具有一些無效的參數C:\\ Users \\ Jeremy \\ Documents \\ Visual Studio 2010 \\ Projects \\ LearnLINQ1 \\ LearnLINQ1 \\ Form1.cs 42 13學習LINQ1
錯誤2參數1:無法從'LearnLINQ1.SubmitTest'轉換為'LearnLINQ1.testMe'C:\\ Users \\ Jeremy \\ Documents \\ Visual Studio 2010 \\ Projects \\ LearnLINQ1 \\ LearnLINQ1 \\ Form1.cs 42 39 LearnLINQ1
我不確定類定義中是否缺少某些東西……對這個概念來說有點新。 有人可以指出我正確的方向嗎?
===============================更新:好的,所以我做了一些更改
客戶類別:
namespace LearnLINQ1
{
public class Customer
{
[Table(Name = "testMe")]
public class SubmitTest
{
[Column(Name = "FirstName")]
public string FirstName { get; set; }
[Column(Name = "LastName")]
public string LastName { get; set; }
[Column(Name = "PhoneNumber")]
public int PhoneNumber { get; set; }
}
}
}
和測試代碼:
namespace LearnLINQ1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
linqTestDataContext db = new linqTestDataContext();
Table<Customer> Customers = db.GetTable<Customer>();
var cus = new Customer { FirstName = "Jeremy", Lastname = "Stafford", Age = 31 };
db.Customers.InsertOnSubmit(cus);
db.SubmitChanges();
}
}
}
現在問題出在客戶類別上。 它給出以下錯誤:
錯誤1在聲明類型'LearnLINQ1.Customer'時缺少部分修飾符; 存在此類型的另一個部分聲明C:\\ Users \\ Jeremy \\ Documents \\ Visual Studio 2010 \\ Projects \\ LearnLINQ1 \\ LearnLINQ1 \\ Customer.cs 11 18 LearnLINQ1
LearnLINQ1.testMe是您需要創建的對象,而不是LearnLINQ1.SubmitTest
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.