在C#中浮点到没有小数值的字符串

zey*_*zey 0 c# numbers decimal

这就是我从我的数据源获得以前最大的ID以及加上一个这个值的方法.

   string _fID = (float.Parse("." + DBContext.Employees.OrderByDescending(x =>   
    x.EmpID).FirstOrDefault().EmpID.ToString()) + .00001f).ToString("F5");
Run Code Online (Sandbox Code Playgroud)

我明白了_fID = 0.00002 .

但我想要的是没有小数值的字符串.
例如._fID = 00002.

我所做的就是取代_fID = _fID.Replace("0.","");.
有没有简短的方法来制作这些东西?谢谢大家:)

PS

EmpID的数据类型是nvarchar(5).

Jon*_*eet 7

我建议你停止使用浮点类型.只需使用整数,因为这基本上就是你所拥有的.(当你逻辑上只使用整数时,你的数据类型是文本的,这是一种遗憾.)

string currentHighest = DBContext.Employees
                                 .Select(x => x.EmpID)
                                 .OrderByDescending(x => x)
                                 .FirstOrDefault();
// TODO: Handle currentHighest being null (empty table)
int nextId = (int.Parse(currentHighest) + 1).ToString("00000");
Run Code Online (Sandbox Code Playgroud)