EF中执行存储过程报错 String[4]: Size 属性具有无效大小值 0

排查后是如下问题所致,给定的参数没有设定大小(加入红框内的就可以了)

 private string GetCode(MCPERPEntities db, string code)
{ List<SqlParameter> paramArray = new List<SqlParameter>();
paramArray.Add(new SqlParameter("@I_CodeName", code));
paramArray.Add(new SqlParameter("@I_Year", DateTime.Now.ToString("yyyy")));
paramArray.Add(new SqlParameter("@I_Month", DateTime.Now.ToString("MM")));
paramArray.Add(new SqlParameter("@I_Day", DateTime.Now.ToString("dd")));
SqlParameter param = new SqlParameter("@O_Code", SqlDbType.NVarChar);
param.Direction = ParameterDirection.Output;
paramArray.Add(param);
paramArray[0].SqlDbType = SqlDbType.VarChar;
paramArray[0].Size = 200;
paramArray[1].SqlDbType = SqlDbType.VarChar;
paramArray[1].Size = 4;
paramArray[2].SqlDbType = SqlDbType.VarChar;
paramArray[2].Size = 2;
paramArray[3].SqlDbType = SqlDbType.VarChar;
paramArray[3].Size = 2; try
{
db.Database.ExecuteSqlCommand("EXEC P_Sys_GetAutoCode @I_CodeName,@I_Year,@I_Month,@I_Day,@O_Code out", paramArray.ToArray());
}
catch (Exception ex)
{
throw;
}
return paramArray[3].Value.ToString();
}

  

写的比较粗糙因为是一个简单的测试就没有写的很细致.希望能帮到遇到这个问题的同学.

EF执行存储工程报错 String[4]: Size 属性具有无效大小值 0。的更多相关文章

  1. C# 调用存储过程出错:String[3]: Size 属性具有无效大小值 0

    存储过程如下 Create PROCEDURE [dbo].[Test] @FundId int, @vchStrategyToken nvarchar(), @ErrorMessage nvarch ...

  2. string[1]:size 属性具有无效大小值0

    截图 使用存储过程返回多个字符串参数 程序 public class EventStatisticsDAL { public static void GetCount(string code, out ...

  3. EF core2.1+MySQL报错'Void Microsoft.EntityFrameworkCore.Storage.Internal.RelationalParameterBuilder..ctor(Microsoft.EntityFrameworkCore.Storage.IRelationalTypeMapper)

    一.使用.net core 2.0 EF mysql 运行一直报错如下: An unhandled exception occurred while processing the request. M ...

  4. 执行 cobbler get-loaders报错

    在配置cobbler安装时执行 cobbler get-loaders报错 [root@110:~]# cobbler get-loaders Traceback (most recent call  ...

  5. 执行opatch apply 报错 OPatch failed with error code 73

    .执行opatch apply 报错 OPatch failed [oracle@ora_11g 14275605]$ /opt/oracle/product/db_1/OPatch/opatch a ...

  6. VirtualBox创建虚拟电脑、执行Genymotion模拟器报错

    当安装完Genynition关于Android应用的调试模拟器之后,在Genymotion执行的平台virtualBox:VirtualBox创建虚拟电脑.执行Genymotion模拟器报错: 错误卖 ...

  7. 解决cookies存储中文报错问题

    URLEncoder.encode("username", "UTF-8"); URLDecoder.decode("123", " ...

  8. linux下执行QT可执行文件报错

    老样子,不多BiBi,直接进入主题! 有时候在linux下编译好QT程序,用QTCreator运行没问题,打包移植到另一台机器上,用命令./XX执行就会报错:error while loading s ...

  9. android studio java工程 报错

    作者:韩梦飞沙 Author:han_meng_fei_sha 邮箱:313134555@qq.com E-mail: 313134555 @qq.com  android studio java工程 ...

随机推荐

  1. 软工实践Alpha冲刺(9/10)

    v队名:起床一起肝活队 组长博客:博客链接 作业博客:班级博客本次作业的链接 组员情况 组员1(队长):白晨曦 过去两天完成了哪些任务 描述: 已经解决登录注册等基本功能的界面. 完成非功能的主界面制 ...

  2. jquery.color.js

    经过测试,可以使用. 2016-12-22  21:39:45 /*! * jQuery Color Animations v2.1.2 * https://github.com/jquery/jqu ...

  3. VMware 密匙

    11.0版本 1F04Z-6D111-7Z029-AV0Q4-3AEH8 亲测可用

  4. NetScaler的cookieinsert和sourceip联合保持机制

    NetScaler的cookieinsert和sourceip联合保持机制 使用NetScaler的cookieinsert和sourceip联合进行session保持机制即主用cookieinser ...

  5. flex弹性布局的基本介绍

    最近开始做元素排列比较复杂的项目,同时需要各种型号手机的适配,我发现以前所掌握的盒子模型.display.position.float等已经不能满足我的需求了, 于是开始着重学习flex弹性布局并运用 ...

  6. 【POJ 2752 Seek the Name, Seek the Fame】

    Time Limit: 2000MSMemory Limit: 65536K Description The little cat is so famous, that many couples tr ...

  7. 【CZY选讲·逆序对】

    题目描述 LYK最近在研究逆序对. 这个问题是这样的. 一开始LYK有一个2^n长度的数组ai. LYK有Q次操作,每次操作都有一个参数k.表示每连续2^k长度作为一个小组.假设 n=4,k= ...

  8. json数据格式的简单案例

    json数据是一种文本字符串,它是javascript的原生数据格式,在数据需要多次重复使用时,json数据是ajax请求的首先.(注:ajax返回的数据格式支持三种分别为:文本格式,json.和xm ...

  9. wav格式

    转自: http://www.cnblogs.com/tiandsp/archive/2012/10/17/2728585.html 起始地址 占用空间 本地址数字的含义 00H 4byte RIFF ...

  10. Android屏幕元素层次结构

    转自:http://blog.csdn.net/hpoi/article/details/4629717   Android屏幕元素层次结构 android.app.Activity 对于一个Andr ...