实体SQL代码问题? [英] Entity SQL code problems ?

查看:72
本文介绍了实体SQL代码问题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在学习实体SQL,我有一个关于代码的问题,当我使用时:

I'm learning about Entity SQL, I have a problem about code is, when I use :

EntitiesName context = new EntitiesName();
string sql = "SELECT VALUE tmp FROM EntitiesName.Tables AS tmp"
ObjectQuery<Tables> exam = ((IObjectAdapter)context).ObjectQuery.CreateQuery<Tables>(sql);
dataGridView.DataSource = exam.ToList();



数据显示在datagridview上。所以代码没问题,但当我将查询sql更改为:


The data displays on datagridview. So that code is OK, but when I change query sql to :

string sql = "SELECT tmp.STUDENT, tmp.CLASS FROM EntitiesName.Tables AS tmp"



代码不运行,datagridview为空,它们不显示任何内容。因此,当我使用SELECT VALUE时,每件事情都很好,但是当我将SELECT VALUE更改为SELECT tmp.column name时,代码不会运行。我已将'Tables'更改为'dbDataRecord'但它有同样的问题,所以任何人都可以帮我解决这个问题。首先感谢!


The code doesn't run, the datagridview is empty, they don't show anything. So when i use SELECT VALUE every thing is good, but when I change SELECT VALUE to SELECT tmp.column name the code doesn't run. I have change the 'Tables' into 'dbDataRecord' but it has same problem, so can anyone help me about this. Thank first !

推荐答案

带有值的查询是实体SQL。它由实体框架的对象服务直接处理。它返回ObjectQuery而不是IQueryable。



为了指定列,您可能必须采用不同的方法。这是原始SQL。



所以做下面的事情可能对你有帮助。



The query with value is the Entity SQL. It is processed by the Entity Framework’s Object Services directly. It returns ObjectQuery instead of IQueryable.

In order to specify columns, you may have to have a different approach. It is Raw SQL.

So doing something like below may help you.

 var students = context.<entityname>.SqlQuery("Select tmp.STUDENT, tmp.CLASS EntitiesName.Tables AS tmp").FirstOrDefault<entityname>();
</entityname></entityname>





这里的EntityName是你的''


这篇关于实体SQL代码问题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆