Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从实体框架存储过程处理下拉列表中的NULL_C#_Entity Framework_Stored Procedures - Fatal编程技术网

C# 从实体框架存储过程处理下拉列表中的NULL

C# 从实体框架存储过程处理下拉列表中的NULL,c#,entity-framework,stored-procedures,C#,Entity Framework,Stored Procedures,我对存储过程返回的null有问题。我有一个下拉列表,我希望最初为空,但随后包含唯一的街道类型。这样,用户可以将字段留空以返回所有结果,或者开始键入并从可能存在的条目中获取建议 该列表是从存储过程中检索到的唯一街道类型,该存储过程只对所有地址的主表执行不同的查询。然而,我在结果中得到了一个空值,我的下拉列表似乎在它达到该空值时停止显示结果 我使用实体框架并添加了返回一组字符串的存储过程,然后使用以下代码填充组合框。如果我在存储的进程中不留任何顺序,null在某个中间,得到一半的结果,如果我命令它,

我对存储过程返回的null有问题。我有一个下拉列表,我希望最初为空,但随后包含唯一的街道类型。这样,用户可以将字段留空以返回所有结果,或者开始键入并从可能存在的条目中获取建议

该列表是从存储过程中检索到的唯一街道类型,该存储过程只对所有地址的主表执行不同的查询。然而,我在结果中得到了一个空值,我的下拉列表似乎在它达到该空值时停止显示结果

我使用实体框架并添加了返回一组字符串的存储过程,然后使用以下代码填充组合框。如果我在存储的进程中不留任何顺序,null在某个中间,得到一半的结果,如果我命令它,所以NULL是第一个,在我的组合框中没有结果。
 SideSewerDAL.SideSewerEntities entities = new SideSewerDAL.SideSewerEntities();
 comboType.DataSource = entities.GetUniqueStreetTypes();
那么我做错了吗?我是否应该在我的storedproc中去掉NULL,并以某种方式修复组合框以添加一个空白条目?或者保留空值,但以某种方式使组合框处理空值而不是阻塞!下面是存储过程的代码

    public ObjectResult<global::System.String> GetUniqueStreetTypes()
    {
        return base.ExecuteFunction<global::System.String>("GetUniqueStreetTypes");
    }

如果存储过程返回字符串列表,则可以创建字符串列表,添加值,然后添加存储过程返回的范围

List<string> values = new List<string>();
values.Add("");
values.AddRange(entities.GetUniqueStreetTypes());
comboType.DataSource = values;

至于处理空值,最好的解决方案可能是最好包括stType不为空的位置

如果从存储过程返回而不是空值,那么它是否有效?从数据库获得结果后,只需在那里添加一个新的空项。请确保从存储过程中删除空值。它确实存在。我必须按如下方式重做存储过程:选择DISTINCT ISNULLstType,作为stType FROM sideswer.dbo.SSCard ORDER BY stType我建议您将UI问题从数据库中移除。添加空字符串应该在UI上,因为它特定于UI问题。我也将尝试这种方法,从存储过程中删除空字符串,只提供唯一的街道类型。但是,如果它绑定到像上面这样的数据源,我不知道如何将空白条目添加到组合框中?