非常に基本的な質問。 Linqの結果を変更するにはどうすればよいですか?Linqの結果を変更する
さらに詳しく説明すると、私はデータベースの注文表から注文リストを選択しました。 Webフォーム上のグリッドビューに結果を表示する必要があります。まず、いくつかの結果を修正する必要があります。たとえば、「注文」フィールドに値がある場合は、「引用」フィールドを空白に変更する必要があります。結果をより精巧に操作しなければならない可能性があります。以前は、配列をループして変更することは可能でしたが、今日のプログラミングではループが起こりたくないようです。現時点では、リストを変更する必要があるために何か間違っているかのように、結果は読み取り専用のように見えます。
protected void fillGridView()
{
using (CqsDataDataContext cqsDC = new CqsDataDataContext())
{
var orderlist = from x in cqsDC.MasterQuoteRecs
where x.CustomerNumber == accountNumber && x.DateCreated > DateTime.Now.AddDays(howfar)
orderby x.DateCreated descending
select new
{
customer = x.customername,
order = x.OrderReserveNumber,
quote = x.Quote,
date = Convert.ToDateTime(x.DateCreated).ToShortDateString(),
project = x.ProjectName,
total = x.Cost,
status = x.QuoteStatus
};
// I would like to loop thru list and make changes to it here
GridView1.DataSource = orderlist;
GridView1.DataBind();
}
}
変更する場合は、クエリを変更します。 Btw、これはリストではありません。 –
私が作る必要がある変更は、クエリでは不可能かもしれません。リストとは対照的に呼び出されるオブジェクトは何ですか? – Dave
DBに変更を加えようとしていますか、または表示するだけですか? DBを変更しようとするなら、 'select x'に変更し、必要な変更を行い、最後に' cqsDC.SubmitChanges(); 'を実行します。表示するだけの場合は、 'quote = x.Order == nullにしますか? x.Quote:null'。 –