我很難理解我的選項從我的控件中的查詢返回json,因爲似乎有很多方法可以做到這一點。任何澄清將非常感激。如何將JSON從Linq返回到實體查詢?
我想從以下返回JSON:
public class MyController : ApiController
{
private MyEntities context = new MyEntities();
public IQueryable <string> Get()
{
var query =
from MY_ENTITY_1 in my_entity_1
from MY_ENTITY_2 in my_entity_2
from MY_ENTITY_3 in my_entity_3
where
MY_ENITITY_1.something == MY_ENTITY_2.something
select new
{
Result1 = MY_ENTITY_1.FOO1,
Result2 = MY_ENTITY_2.FOO2,
Result3 = MY_ENTITY_3.FOO3
};
foreach (var myResults in query)
{
Console.WriteLine(myResults);
};
return myResults; // JSON?
}
謝謝StriplingWarrior,這看起來有很大的改進和清晰。如果返回多行,那麼在返回'返回查詢'之前,有必要在這裏迭代它們?這應該發生在客戶端嗎?還是隻是處理? –
@ChristopherCrisis:框架應該能夠處理它:它可能會返回代表具有數組的對象的JSON。我將親自調用'return query.ToList();',並在'using'語句中創建上下文以確保它被丟棄。雖然您可能想要多讀一點,因爲我似乎記得WebApi能夠將OData支持添加到返回IQueryables的操作。 – StriplingWarrior
非常感謝StriplingWarrior ... –