C# 如何将数据库中的值添加到unity中的列表中
我有一个数据库,我在其中创建了一个表 “CampWheelDeminationNo”,我有一个特定的行“配额”C# 如何将数据库中的值添加到unity中的列表中,c#,sql,unity3d,C#,Sql,Unity3d,我有一个数据库,我在其中创建了一个表 “CampWheelDeminationNo”,我有一个特定的行“配额” 当有“配额”时,我需要取对应“配额”的“slno” 变成零 我的sql代码是 "select slno from CampWheelDenomination where quota_allowded = 0" 现在我需要将这些“slno”添加到一个列表中..我自己做了一个方法,但它不起作用 public int checkCodeinDb() { using (IDbC
"select slno from CampWheelDenomination where quota_allowded = 0"
public int checkCodeinDb()
{
using (IDbConnection dbConnection = new SqliteConnection (connectionString))
{
dbConnection.Open ();
using (IDbCommand dbCmd = dbConnection.CreateCommand ())
{
string sqlQuery = "select slno from CampWheelDenomination where quota_allowded = 0";
dbCmd.CommandText = sqlQuery;
using (IDataReader reader = dbCmd.ExecuteReader ())
{
while (reader.Read ())
{
//slnolist is a list i have created at begining
SlNoList.Add (reader.GetString (0));
}
return slnolist ; //error at here
foreach (string st in SlNoList)// i have done this to check whether the slno is added to the list.
{
print (st);
}
dbConnection.Close ();
reader.Close ();
}
}
}
}
错误是无法将类型
System.Collections.Generic.List'隐式转换为发生在行return SlNoList上的
int您正试图返回List
,但您的函数返回类型是int
。将函数定义更改如下:
public List<string> checkCodeinDb()
{
///your usual code here
公共列表checkCodeinDb()
{
///你通常的代码在这里
另外,在查看代码时,您可能应该在函数中有一个列表并返回它
例如:
List<string> slnolist = checkCodeinDb();
public List<string> checkCodeinDb()
{
List<string> data;
///your usual code here and add your database returned value to data variable and finally return it
return data;
}
List slnolist=checkCodeinDb();
公共列表checkCodeinDb()
{
列出数据;
///在这里输入您的常用代码,并将数据库返回值添加到数据变量中,最后返回它
返回数据;
}
您正试图返回列表
,但您的函数返回类型为int
。请按如下方式更改函数定义:
public List<string> checkCodeinDb()
{
///your usual code here
公共列表checkCodeinDb()
{
///你通常的代码在这里
另外,在查看代码时,您可能应该在函数中有一个列表并返回它
例如:
List<string> slnolist = checkCodeinDb();
public List<string> checkCodeinDb()
{
List<string> data;
///your usual code here and add your database returned value to data variable and finally return it
return data;
}
List slnolist=checkCodeinDb();
公共列表checkCodeinDb()
{
列出数据;
///在这里输入您的常用代码,并将数据库返回值添加到数据变量中,最后返回它
返回数据;
}
此外,要将数据库中的值添加到列表中,我们可以使用此代码
public void checkCodeinDb()
{
using (IDbConnection dbConnection = new SqliteConnection (connectionString))
{
dbConnection.Open ();
using (IDbCommand dbCmd = dbConnection.CreateCommand ())
{
string sqlQuery = "select slno from CampWheelDenomination where quota_allowded = 0";
dbCmd.CommandText = sqlQuery;
using (IDataReader reader = dbCmd.ExecuteReader ())
{
while (reader.Read ())
{
string ad = reader ["slno"].ToString();
SlNoList.Add (ad);
}
foreach (string st in SlNoList)
{
print (st);
}
dbConnection.Close ();
reader.Close ();
}
}
}
}
另外,要将数据库中的值添加到列表中,我们可以使用以下代码
public void checkCodeinDb()
{
using (IDbConnection dbConnection = new SqliteConnection (connectionString))
{
dbConnection.Open ();
using (IDbCommand dbCmd = dbConnection.CreateCommand ())
{
string sqlQuery = "select slno from CampWheelDenomination where quota_allowded = 0";
dbCmd.CommandText = sqlQuery;
using (IDataReader reader = dbCmd.ExecuteReader ())
{
while (reader.Read ())
{
string ad = reader ["slno"].ToString();
SlNoList.Add (ad);
}
foreach (string st in SlNoList)
{
print (st);
}
dbConnection.Close ();
reader.Close ();
}
}
}
}
错误是什么?在定义
SlNoList
时,是否实例化了该变量?SlNoList是我在SlNoList=sql.ExecuteAsList(sqlQuery)之前创建的列表;这会将数据库中的值添加到list@Martinj你能粘贴列表的定义吗?你列出了一个字符串列表吗?错误是什么?你在哪里定义了SlNoList
,你实例化了那个变量吗?SlNoList是我以前创建的列表SlNoList=sql.ExecuteAsList(sqlQuery);这会将数据库中的值添加到list@Martinj你能粘贴列表的定义吗?你列出了一个字符串列表吗?当列表已经实例化时,使用slnolist.addAll(checkCodeinDb());
不是更安全吗?只是要求个人学习:)使用slnolist.addAll(checkCodeinDb())不是更安全吗
当列表已经实例化时?只是要求个人学习:)