我試圖從表中選擇並返回某些列,查詢將忽略該選擇並返回除相關表中相關字段以外的所有列。 如何僅返回選定的列?LINQ選擇語法將返回所有列而不是選定的列
這是我API Controller
,
[Produces("application/json")]
[Route("api/Common")]
public class CommonController : Controller
{
private readonly ArtCoreDbContext _context;
public CommonController(ArtCoreDbContext context)
{
_context = context;
}
[HttpGet]
public IEnumerable<IdState> GetState()
{
return _context.IdState;
}
[HttpGet("{id}")]
public async Task<IActionResult> GetState([FromRoute] int id)
{
var L2EQuery = await (from i in _context.IdState
select new { Id = i.StaeId, i.text }).ToListAsync();
return Ok(L2EQuery);
}
}
更新
這是模型,
public class IdState
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity), Key]
public int StaeId { set; get; }
public int CouyId { set; get; }
[Display(Name = "State"), Required]
public string text { set; get; }
public ICollection<PatReg> State { get; set; }
public ICollection<IdCity> TblIdCity { get; set; }
}
和輸出,
[{
"staeId": 1,
"couyId": 2,
"text": "California",
"state": null,
"tblIdCity": null
}, {
"staeId": 2,
"couyId": 2,
"text": "WA",
"state": null,
"tblIdCity": null
}, {
"staeId": 3,
"couyId": 1,
"text": "Ajloun",
"state": null,
"tblIdCity": null
}, {
"staeId": 4,
"couyId": 1,
"text": "Amman",
"state": null,
"tblIdCity": null
}]
ajax
呼叫
使用LINQPad 5我得到的只有選中的列,
您如何看到它比ID和文本更多地返回? – Backs
我米用'ajax'並輸出到'console' – JSON
顯示'IdState'類和輸出 – Backs