使用.Net实体框架存储过程调用将数据插入表时,末尾会附加空白。这个问题只涉及两列。其中两列都具有指向不同表的外键(表将具有允许的值(常量((。FYI。
- 在sqlDB中,第1列定义为varchar(6(,第2列定义为varchar(3(
- 但是外键表1具有最大长度为4的数据、表2具有最大长度是3的数据
- 在EDMX文件中,以下代码可用
a(
<Function Name="spInsertdetails" Aggregate="false" BuiltIn="false" NiladicFunction="false" IsComposable="false" ParameterTypeSemantics="AllowImplicitConversion" Schema="dbo">
<Parameter Name="column1" Type="char" Mode="In" />
<Parameter Name="column2" Type="char" Mode="In" />
b) <FunctionImport Name="spInsertdetails" ReturnType="Collection(TestDBModel.spInsertdetails_Result)">
<Parameter Name="column1" Mode="In" Type="String" />
<Parameter Name="column2" Mode="In" Type="String" />
在3.a(中,我尝试将char更改为varchar,但问题仍然存在。
如果需要任何进一步的细节,请告诉我。
这可能是由于数据长度的大小不同。因此,更改数据类型的长度,使两个表中的长度相等。
我们需要在存储过程和实体框架edmx中将数据类型更改为varchar,然后在3(函数中,它将更改为varchar,因此不会在末尾添加空格。