Search code examples
linqentity-frameworklinq-to-entities

how to format a decimal value in linq


var data = (from objData in receiptData
            select new
            {
                ITEM_NAME=objData.ITEM_NAME,
                UNIT_NAME=objData.UNIT_NAME,
                PACK = objData.PACK,
                RECIEVED_QTY =objData.RECIEVED_QTY.Value.ToString("0"), // ***this statement invoke error***
                LPRATE = objData.LPRATE,
                AMT = objData.LPRATE.Value * objData.RECIEVED_QTY.Value,
                ESL = objData.ESL,
                REMARKS = objData.REMARKS,
                CHALLAN_NO=objData.CHALLAN_NO,
                VEH_NO=objData.VEH_NO
            });

Solution

  • Try like this

    var data = (from objData in receiptData 
                select new 
                {
                    ITEM_NAME=objData.ITEM_NAME,
                    UNIT_NAME=objData.UNIT_NAME,
                    PACK = objData.PACK,
                    RECIEVED_QTY =objData.RECIEVED_QTY.Value.ToString("0.00", System.Globalization.CultureInfo.InvariantCulture),
                    LPRATE = objData.LPRATE,
                    AMT = objData.LPRATE.Value * objData.RECIEVED_QTY.Value,
                    ESL = objData.ESL,
                    REMARKS = objData.REMARKS,
                    CHALLAN_NO=objData.CHALLAN_NO,
                    VEH_NO=objData.VEH_NO
                });