“System.String”到“System.Guid”的强制转换无效。各位路过的请帮忙看看!

问题描述

大家帮我看一下,谢谢。调试后老是出现下面错误:从“System.String”到“System.Guid”的强制转换无效。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.InvalidCastException:从“System.String”到“System.Guid”的强制转换无效。源错误:行59:publicvoidSave(objectobj)行60:{行61:HibernateTemplate.Save(obj);行62:}行63:以下是我写的代码:elseif(strAction=="Add"){if(this.ddlCNo.Text.Trim().Equals("")||this.TxtBMNo.Text.Trim().Equals("")){if(this.ddlCNo.Text.Trim().Equals("")){WebCommon.msg("请输入合同号码。","");return;}if(this.TxtBMNo.Text.Trim().Equals("")){WebCommon.msg("请输入BOM表单号。","");return;}}else{SystemBE.SDSBMc=newSDSBM();c.B_BMNo=TxtBMNo.Text;c.B_ConfirmDictateID=newGuid(ddlCNo.SelectedValue);//感觉出错是在这个地方但是不知道如何去改c.B_DrawingID=int.Parse(dllDrawingNo.SelectedValue);c.B_Revision=TxtRevision.Text;c.B_Date=DateTime.Now;c.B_Remark=TxtR.Text;dao.Save(c);WebCommon.msg("保存成功!","BMEdit.aspx?ID="+GetLastID.GetID("dbo.SDS_BM","B_ID")+"&Action=Edit");}}

解决方案

解决方案二:
c.B_ConfirmDictateID=newGuid(ddlCNo.SelectedValue);ddlCNo.SelectedValue需要为"89485903-f145-43fa-b917-519dbde255ea"//这样的一组字符串值或者,或者二进制,如你要一个新的Guid可以用c.B_ConfirmDictateID=Guid.NewGuid();
解决方案三:
g包含下面任一格式的GUID的String(“d”表示忽略大小写的十六进制数字):32个连续的数字dddddddddddddddddddddddddddddddd-或-8、4、4、4和12位数字的分组,各组之间有连线符。也可以用一对大括号或者圆括号将整个GUID括起来:dddddddd-dddd-dddd-dddd-dddddddddddd-或-{dddddddd-dddd-dddd-dddd-dddddddddddd}-或-(dddddddd-dddd-dddd-dddd-dddddddddddd)你的ddlCNo.SelectedValue里面的格式与他的要求不匹配吧
解决方案四:
有哪位知道具体怎么改吗?我是一个初学者。谢谢

时间: 2024-09-02 11:42:59

“System.String”到“System.Guid”的强制转换无效。各位路过的请帮忙看看!的相关文章

从“System.DBNull”到“System.Guid”的强制转换无效。

问题描述 我用了NHibernate技术做简易留言薄,数据库字段为ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[tbGuestBook]')andOBJECTPROPERTY(id,N'IsUserTable')=1)droptable[dbo].[tbGuestBook]GOCREATETABLE[dbo].[tbGuestBook]([ID][uniqueidentifier]NOTNULL,[UserName][v

从具体化“System.Decimal”类型到“System.Int32”类型的指定强制转换无效

问题描述 程序错误信息:System.InvalidOperationException:从具体化"System.Decimal"类型到"System.Int32"类型的指定强制转换无效.在System.Data.Common.Internal.Materialization.Shaper.ErrorHandlingValueReader`1.GetValue(DbDataReaderreader,Int32ordinal)在lambda_method(Closur

LINQ to Entities 不识别方法“System.String ToString(System.String)”因此该方法无法转换为存储表达式

问题描述 varweather=(fromcindb.CCISWeatherForecastswherec.Date.ToString("yyyy-MM-dd")=="2011-11-10"selectc).FirstOrDefault();LINQtoEntities不识别方法"System.StringToString(System.String)",因此该方法无法转换为存储表达式. 解决方案 解决方案二:c.Date.ToString(&q

LinQ to entities 不能识别方法“system.string.ToString(system.String)”.因此该方法无法转换为存储表达式

[我也是刚研究IEnumerable和IQueryable]以下都是个人理解,仅供参考,如有错误欢迎指出~ 在EF里面,使用IQueryable和IEnumerable可以延迟加载. IQuerybale其实是微软针对SQLService进行了再度优化的一个产物.使用上基本和IEnumerable类似. 其实还是有一些使用上的区别的,比如说IEnumerable里面有count()方法,我们可以借此进行for循环.IQueryable却只能foreach循环. -----------------

不能将System.string 强制转换为oracleParameter

问题描述 ///<summary>///执行事务///</summary>///<paramname="parms"></param>///<returns></returns>publicstaticintExecuteObjectTran(IList<MIS.DBUtility.ObjectTest>Mlist){intval=1;using(OracleConnectionconn=newOrac

无法将类型为“System.Windows.Forms.BindingSource”的对象强制转换为类型“System.Data.DataTable”

问题描述 c#无法将类型为"System.Windows.Forms.BindingSource"的对象强制转换为类型"System.Data.DataTable"代码:System.Data.DataTabledataSource=newSystem.Data.DataTable();if(base.DataSourceisDataView){dataSource=((DataView)base.DataSource).ToTable();}else{dataSo

C# 求解图片显示,报错为:无法将system.string类型转换为system.byte[] 类型

问题描述 我是想在点击表单的时候,显示相应的照片,第15列存储的是image格式数据,代码和报错截图如下,请帮忙解答,谢谢! 解决方案 解决方案二:图片应该是一个实实在在物理存在的图片转为字节数组,string是转不了的.解决方案三:既然系统已经提示Value是String,那你就Console.WriteLine(Value),确认下Value是什么呗如果输出System.Byte[]或其他的类型名说明加载的时候已经ToString()了如果是个base64的字符串,那就先arr=Conver

异常详细信息: System.InvalidCastException: 指定的转换无效。

问题描述 "/"应用程序中的服务器错误.--------------------------------------------------------------------------------指定的转换无效.说明:执行当前Web请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息.异常详细信息:System.InvalidCastException:指定的转换无效.源错误:执行当前Web请求期间生成了未经处理的异常.可以使用下面的

求助?无法在System.int32和System.string上执行“like”操作

问题描述 错误提示:无法在System.int32和System.string上执行"like"操作.跟踪也不知道是哪的错误! 解决方案 解决方案二:我也不知道哪错了解决方案三:什么叫like?我没明白.是SQL里的吗?1:SQL里int类型是无法like的,要char系列的才行:2:SQL里string类型的方法是:select*fromtablewheretextFieldLike'%T%';解决方案四:错是在int类型无法用Like来匹配,int的解决办法还不知道但是要是改成va