C# 使用DataContext将LINQ重写为SQL类
我已经编写了一个函数,根据我的LINQ to SQL类中从客户端接收到的数据,将一些数据插入SQL表:C# 使用DataContext将LINQ重写为SQL类,c#,sql,linq,C#,Sql,Linq,我已经编写了一个函数,根据我的LINQ to SQL类中从客户端接收到的数据,将一些数据插入SQL表: //some code string commString = "INSERT INTO Token (tk_ID, tk_token, tk_date, tk_IP) VALUES (@val1, @val2, @val3, @val4)"; string conString = "placeholder"; token = GenerateToken(clientLogi
//some code
string commString = "INSERT INTO Token (tk_ID, tk_token, tk_date, tk_IP) VALUES (@val1, @val2, @val3, @val4)";
string conString = "placeholder";
token = GenerateToken(clientLoginData);
using (SqlConnection con = new SqlConnection(conString))
{
using (SqlCommand com = new SqlCommand())
{
com.Connection = con;
com.CommandText = commString;
com.Parameters.AddWithValue("@val1", clientLoginData.cl_ID);
com.Parameters.AddWithValue("@val2", token);
com.Parameters.AddWithValue("@val3", clientLoginData.LoginTime);
com.Parameters.AddWithValue("@val4", clientLoginData.cl_IP);
try
{
con.Open();
com.ExecuteNonQuery();
}
catch (SqlException e)
{
}
}
//rest of function
这样做正确吗?我听说你可以用电脑做得更容易
SampleDBDataContext dc = new SampleDBDataContext();
然后使用这个变量dc。但是我从来没有用过,是真的吗?有人能给我举个例子,用这个在表中插入一个值吗?您的代码应该是这样的
using (SampleDBDataContext dc = new SampleDBDataContext())
{
Token item = new Token();
item.tk_ID = clientLoginData.cl_ID;
item.tk_token = token;
item.tk_date = clientLoginData.LoginTime;
item.tk_IP = clientLoginData.cl_IP;
dc.Tokens.InsertOnSubmit(item);
dc.SubmitChanges();
}
您的代码是一个简单的c#代码,用于插入值,而不是您应该具有的Linq2Sql的Linq2Sql
using (YourDbContext dc=new YourDbContext ()){
Token item = new Token();
item.tk_date = clientLoginData.LoginTime;
item.tk_IP = clientLoginData.cl_IP;
item.tk_ID = clientLoginData.cl_ID;
item.tk_token = token;
dc.Tokens.InsertOnSubmit
dc.SubmitChanges();
}
像这样做:
DataContext dc = new Using(DataContext(Connections.GetDynamicConnectionfromConfig()))
{
Sampleclass obj = new Sampleclass();
//Here assign properties to obj
dc.tableName.InsertOnSubmit(obj);
dc.SubmitChanges();
}
希望这对您有所帮助。这不是SQL的关键。这是:我不能做
Token.InsertOnSubmit
,但是我可以做dc.Tokens.InsertOnSubmit
,对吗?