Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin PCL和sqlite.net_Sqlite_Xamarin.ios_Xamarin_Portable Class Library_Executequery - Fatal编程技术网

Xamarin PCL和sqlite.net

Xamarin PCL和sqlite.net,sqlite,xamarin.ios,xamarin,portable-class-library,executequery,Sqlite,Xamarin.ios,Xamarin,Portable Class Library,Executequery,在PCLxamarin中,我需要向函数传递一个类型,然后使用该类型执行查询。 我尝试使用的代码如下: public object sqlLeggi(string sql, Type myType){ SQLiteCommand cmd = DB.CreateCommand(sql); var results = cmd.ExecuteQuery< myType > (); [..] } 有人知道这样做是否可能吗 非常感谢这两个语句中的myType起着非常不同的作用: publi

在PCLxamarin中,我需要向函数传递一个类型,然后使用该类型执行查询。 我尝试使用的代码如下:

public object sqlLeggi(string sql, Type myType){
 SQLiteCommand cmd = DB.CreateCommand(sql);
 var results = cmd.ExecuteQuery< myType > ();
[..]
}
有人知道这样做是否可能吗


非常感谢

这两个语句中的
myType
起着非常不同的作用:

public object sqlLeggi(string sql, Type myType){
这里,
myType
是一个
Type
对象,引用的是

第二种是这样的:

public myType sqlLeggi<myType>(string sql{
    SQLiteCommand cmd = DB.CreateCommand(sql);
    var results = cmd.ExecuteQuery< myType > ();
    [..]
}

请注意,这与可移植类库、xamarin、monotouch、executequery或sqlite无关。这只是
类型
对象和泛型类型参数之间的混淆。这正是我应该回答的。我希望我能不止一次投票。
var results = cmd.ExecuteQuery< myType > ();
var results = cmd.ExecuteQuery(myType);
public myType sqlLeggi<myType>(string sql{
    SQLiteCommand cmd = DB.CreateCommand(sql);
    var results = cmd.ExecuteQuery< myType > ();
    [..]
}
public T sqlLeggi<T>(string sql{
    SQLiteCommand cmd = DB.CreateCommand(sql);
    var results = cmd.ExecuteQuery<T>();
    [..]
}