c# - Entity Framework 试图在数据库中将空字符串保存为 null

标签 c# asp.net entity-framework webforms

我必须使用数据库表,无论出于何种原因,它都要求所有条目都具有一个值(非空)。并非所有条目都与用户相关,当通过网络表单输入时,他们会将条目留空。我正在使用 Entity Framework 使用 FormView 数据绑定(bind)。

我遇到的问题是,它不是为没有文本的文本框输入空字符串,而是尝试使用 NULL 值。有没有办法只输入一个空字符串来安抚数据库限制?

我希望我可以在数据库中更改这些以允许空值,但不幸的是我没有访问权限。

这是 aspx 的一个片段:

 <asp:TextBox ID="CustIdTextBox" runat="server" Text='<%# Bind("CustId") %>' />

看起来 Entity Framework 正在接受空字符串并决定将其作为 NULL 保存到数据库中。

最佳答案

我们确实需要一些代码,但我猜 textbox.text 属性没有初始化,所以它会给你 NULL。只需将其初始化为空字符串,或在更新数据库之前将空值替换为 string.empty。

关于c# - Entity Framework 试图在数据库中将空字符串保存为 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16320685/

相关文章:

c# - 中国地区应用洞察

c# - 使用 Entity Framework 将 MySQL 记录写入数组

c# - 知道从代码隐藏中选择了哪个选项卡

c# - 具有现有数据库 View 的 Entity Framework 代码优先

entity-framework - 如何通过 Windows Azure(预览版)管理门户设置 ADO.NET Entity Framework 连接字符串?

c# - 为什么 TcpClient 这么慢而且 CPU 很饿?

c# - 自定义用户控件 TextBlock.text 绑定(bind)

c# - 错误 : C:\Program Files\dotnet\dotnet. exe 失败,返回代码:1

c# - 找出哪些短语在字符串中被多次使用

c# - 使用 Silverlight 时防止 ASP.NET session 超时