我有一个存储在字符串中的表名。 我希望能够做到这样的事情:
string tableName = "sometable";
var query = from m in _Context[tableName]
select m;
我在输入互联网时正在搜索...
任何帮助表示感谢。
答案 0 :(得分:0)
您可以在实体上使用反射来获取所需的表<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="drop" name="1" class="form-control">
<option value="policy_no">Policy No</option>
<option value="claim_no">Claim No</option>
<option value="acc_no">Account No</option>
<option value="client_no">Client No</option>
</select>
<input type="text" name="selectValue" id='inputId'>
,然后在其上运行 LINQ 查询
DbSet
但是无论如何你会把它作为对象的类型,除非你正确地投射它,否则它不会提供对属性的访问。
答案 1 :(得分:0)
在DbContext类中,添加一个名为Set的方法,返回
public DbSet Set(string name)
{
// you may need to fill in the namespace of your context
return base.Set(Type.GetType(name));
}
像这样查询:
using (var db = new YourDataContext())
{
var results = db.Set("Namespace.EntityName") .AsQueryable();
}