Я хочу выполнить динамический пользовательский запрос, который не привязан ни к какому объекту или классу в моем проекте.Он всегда будет возвращать ноль или 1 запись.
Я пробовал много вещей, но пока безуспешно:
// this is working function with hard-coded query
private Dictionary<string, string> getRecord(string id, string viewName)
{
Peron p = db.Person.Where(e => e.ID == id).FirstOrDefault();
var json = JsonConvert.SerializeObject(p);
return JsonConvert.DeserializeObject<Dictionary<string, string>>(json);
}
, но мне нужно это с динамическим запросом к представлению базы данных, не добавляя модельв EF models.edmx
.
private Dictionary<string, string> getRecord(string id, string viewName)
{
string qry = "select * from " + viewName + " where ID='" + id + "'";
var p = db.Database.SqlQuery<dynamic>(qry).FirstOrDefault();
// p sometimes returns null on dynamic object, many times it throws
// an error "Cannot convert this to this" ....
var json = JsonConvert.SerializeObject(p);
return JsonConvert.DeserializeObject<Dictionary<string, string>>(json);
}