小编xqw*_*zid的帖子

添加了SqlFunctions.StringConvert不必要的填充

在我的ViewModel中,我将返回以下内容以获取下拉列表:

public IEnumerable<SelectListItem> Statuses
    {
        get
        {
            using (var context = new AssetManager.Models.AssetManagerEntities())
            {
                var query = from status in context.AssetStatuses
                            where status.Reserved != true
                            select new SelectListItem()
                                       {
                                           Value = SqlFunctions.StringConvert((double)status.Id),
                                           Text = status.Name,
                                           Selected = false
                                       };

                return query.ToList();
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

然后在我的视图中它有点像这样:

 @Html.DropDownListFor(model => model.Status, (IEnumerable<SelectListItem>)Model.Statuses)
Run Code Online (Sandbox Code Playgroud)

这一切都正常,除了SqlFunctions.StringConvert,默认情况下使字符串长度为10,所以我最终在html中得到这个:

<option value="         7">Free to loan</option>
Run Code Online (Sandbox Code Playgroud)

记下值字段中的间距.这是一个问题,因为我的ViewModel要求此字段为int.

我可以简单地指定长度参数,但这不是动态的.

有没有人见过这个问题,或者有解决方案呢?

谢谢,尼克

asp.net entity-framework asp.net-mvc-3

16
推荐指数
2
解决办法
5586
查看次数

在C#中的给定变量之间查找表中的最小值和最大值

我有以下数据库表:

COL-A COL-B
1     $200
2     $100
4     $50
5     $40 
Run Code Online (Sandbox Code Playgroud)

我需要做的是,如果我的值为1.5,我需要找到它之间的两个数字,所以这将是12.

我需要将值输入到我正在进行的定价计算器的线性方程式中.

值可能并不总是相同,所以它甚至可能是这样的:

COL-A COL-B
    1     $200
    6     $100
    11     $50
    22     $40 
Run Code Online (Sandbox Code Playgroud)

如果我有9,那么我将返回611,因为9落在这两个值之间等等

可视化我需要将它们放入单独的变量中:

double Min = the_lowest_value;
double Max = the_highest_value;
Run Code Online (Sandbox Code Playgroud)

我使用EF来做这个,所以它需要在LINQ中.

c# linq entity-framework

1
推荐指数
1
解决办法
752
查看次数

来自布尔人的锻炼

这是我想要做的.

我的数据库中有两个位字段:

存档(位)已删除(位)

我想做的是根据他们的vaules计算一个int.

作为一个例子,这将在我的模型中:

class Person {

Int32 Status {get;set;}

}
Run Code Online (Sandbox Code Playgroud)

如果Archived = true,则将状态设置为1,

如果Deleted = true,则将状态设置为2,

如果两者都为假,则将状态设置为0.

我想用if语句做这个,​​也许我可以使用某种布尔算法?

c# asp.net-mvc-3

0
推荐指数
1
解决办法
55
查看次数

标签 统计

asp.net-mvc-3 ×2

c# ×2

entity-framework ×2

asp.net ×1

linq ×1