簡體   English   中英

如何在Linq中將來自不同表的2個值相乘?

[英]How to multiply 2 values from different tables in Linq?

我嘗試將不同表中的2個值相乘,但這樣會保持錯誤:

Imgur

這是我的代碼:

    //Label12 is in datalist
    var Label12 = (Label)(((Button)sender).Parent).FindControl("Label12");  

    var item2 = from c in db.OrderTemps
                join o in db.Products
                on c.Prod_ID equals o.Prod_ID
                select new
                {
                   o.Prod_ID,
                   o.Prod_Price, //Type "Decimal"
                   c.Amount, //Type "Integer"
                   c.Total, //Type "Decimal
                   s = o.Prod_Price * c.Amount
                };

     foreach (var i in item2)
     {
        Label12.Text = Convert.ToString(i.s); //an error happen here!!
     }

任何幫助表示贊賞。

LINQ查詢沒有問題。 如果沒有記錄加入,那么將沒有任何枚舉,並且您將跳過foreach正文。 我認為您的Label12等於null 檢查它是否確實存在於發件人的父級上。

旁注:為什么要嘗試循環分配文本? 標簽將僅保留最后分配的值。

檢查您的OrderTemps表中的金額值是否為空。 或檢查您是否真的有一個ID = Label12的控制器。 您的Linq查詢沒有問題...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM