У меня есть переменная Сумма в моем классе.
Это значение Суммы прибывает из базы данных как десятичное число что-то.0.000654345
При отображении в сетке я должен показать это значением %.
Умножьте на 100 и проанализируйте результат как строку и отформатируйте ее соответствующим образом ...
String parsedNum = String.Format("{0}%", num * 100);
Используйте формат «P» , который, надеюсь, лучше осведомлен о глобализации:
String.Format("{0:P4}", pos); // e.g. 1,000.0000%
Вы должны иметь возможность использовать эту строку формата непосредственно в своем Gridview тоже, как предлагали другие. Однако, поскольку он делает 100-кратный расчет за вас, он действительно должен работать :). Возможно вот так :
<asp:BoundField DataField="Db" DataFormatString="{0:P4}" />
Double yourValue = 0.00065;
String percentage = (yourValue*100).ToString() + "%";
Похоже, что вы неявно задаете вопрос по Gridview, попробуйте:
<ItemTemplate>
<asp:Label id="Label1" runat="server"
Text='<%# Eval("Amount", "{0:0%}") %>' />
</ItemTemplate>
Хорошо , это действительно зависит от того, что он должен представлять в его текущей форме.
Это может быть таким же простым, как умножение на 100 ... но это также может быть 10 000 в зависимости от точного значения «Сумма».
Что бы вы хотели отображать для 0,000654345?
Нет необходимости умножать на 100. Используйте это
Console.WriteLine("Display percentage: {0:#.##%}", num);
Используйте # в зависимости от точности.