C# 将模型作为函数参数传递
我在C中找到了下面的代码 var results=context.Database.SqlQuery select*from students.ToList 能给我一份学生和学生的名单吗 var results=context.Database.SqlQuery select*from teachers.ToList 我可以给我一份教师名单。这些看起来很像我。我想做的是将上面的内容变成一个函数,它接受一个模型和一个字符串,这样我就可以传递C# 将模型作为函数参数传递,c#,.net,C#,.net,我在C中找到了下面的代码 var results=context.Database.SqlQuery select*from students.ToList 能给我一份学生和学生的名单吗 var results=context.Database.SqlQuery select*from teachers.ToList 我可以给我一份教师名单。这些看起来很像我。我想做的是将上面的内容变成一个函数,它接受一个模型和一个字符串,这样我就可以传递 GetList(Model myModel, strin
GetList(Model myModel, string sqlString)
{
return context.Database.SqlQuery<myModel>(sqlString).ToList();
}
这可能吗?您正在考虑使用泛型 您的方法如下所示:
GetList<T>(string sqlString)
{
return context.Database.SqlQuery<T>(sqlString).ToList();
}
然后你会称之为用你的类型替换T,所以:
var x=y.GetListselect*来自表
阅读有关泛型的内容如果希望函数返回模型类的列表,请让函数使用泛型类型: 用法非常简单:
List<YourModel> yourList = GetList<YourModel>(sqlString);
此函数将为您返回任何类型的列表。这是一样的。两者都调用相同的方法
List<YourModel> yourList = GetList<YourModel>(sqlString);