需要使用货币符号返回值

Pin*_*s K 1 c# asp.net silverlight-4.0

我在应用上有一个小标签,允许用户在价格表中查找价格并返回价格.如何在退货价格上获得"$"符号?

public double? SearchMedicinePrice(Int64 pNDC)
{
    double? retValue = null;
    objConext = new FDBEntities();
    Medicine objMedicine = objConext.Medicines.Where(med => med.PriceType == 9 && med.NDC == pNDC).OrderByDescending(item=>item.MedicineID).FirstOrDefault();
    if (objMedicine != null)
    {
        retValue = objMedicine.Price;
    }
    return retValue;
}
Run Code Online (Sandbox Code Playgroud)

Rob*_*bie 6

当你调用ToString()一个double(以及许多其他类型),你可以在通过格式字符串指定的结果应该如何格式化.像这样:

double price = 10.5;
price.ToString("C");
Run Code Online (Sandbox Code Playgroud)

输出= $10.50

你也可以像这样使用String.Format:

string message = String.Format("The price is {0:C}", SearchMedicinePrice(pndc));
Run Code Online (Sandbox Code Playgroud)

{0:C}格式字符串.在C该值应为货币格式指定.

您还可以传入一个CultureInfo对象来配置货币符号等内容.例如,将输出以下代码£10.50

10.5.ToString("C", new CultureInfo("en-GB"))
Run Code Online (Sandbox Code Playgroud)

您也可以考虑使用十进制而不是double存储货币数据.