“代码生成失败。错误是““LinearBrushConverter”无法将“LinearBrush”转换为“System.CompenentModel.Design.Serialization.InstanceDescrip”。””问题的解决办法
2009-04-21 00:27
1046 查看
“代码生成失败。错误是““LinearBrushConverter”无法将“LinearBrush”转换为“System.CompenentModel.Design.Serialization.InstanceDescrip”。””问题的解决办法
问题描述:
自定义了一个LinearBrush类型,使用该类型定义了一个自定义控件的一个属性BackgroundBrush,但是在进行编译一次之后,再修改自定义控件的BackgroundBrush属性的内容并保存的时候,会出现“代码生成失败。错误是““LinearBrushConverter”无法将“LinearBrush”转换为“System.CompenentModel.Design.Serialization.InstanceDescrip”。””这样的提示错误,切换到窗体生成的代码中发现BackgroundBrush属性的代码并没有生成。有的时候,就算正常保存了该属性,但是编译过之后再修改其他属性再保存的时候,也这样提示错误。
发生原因:
出现这个问题的原因是两次编译生成的程序集的版本一样,导致VS的窗体设计器没有获取到最新的运行时对象,而出现的错误。
解决办法:
修改项目的配置信息,使其每次编译的时候都生成不同的版本。
在解决方案资源管理器中,选择项目,右键选择属性,在应用程序一页中点击“程序集信息”按钮,修改程序集版本为:1.0.0.*,保存即可。
这个是不是Visual Studio的一个bug,现在还很难说。还有没有更好的解决办法,欢迎提出。
问题描述:
自定义了一个LinearBrush类型,使用该类型定义了一个自定义控件的一个属性BackgroundBrush,但是在进行编译一次之后,再修改自定义控件的BackgroundBrush属性的内容并保存的时候,会出现“代码生成失败。错误是““LinearBrushConverter”无法将“LinearBrush”转换为“System.CompenentModel.Design.Serialization.InstanceDescrip”。””这样的提示错误,切换到窗体生成的代码中发现BackgroundBrush属性的代码并没有生成。有的时候,就算正常保存了该属性,但是编译过之后再修改其他属性再保存的时候,也这样提示错误。
发生原因:
出现这个问题的原因是两次编译生成的程序集的版本一样,导致VS的窗体设计器没有获取到最新的运行时对象,而出现的错误。
解决办法:
修改项目的配置信息,使其每次编译的时候都生成不同的版本。
在解决方案资源管理器中,选择项目,右键选择属性,在应用程序一页中点击“程序集信息”按钮,修改程序集版本为:1.0.0.*,保存即可。
这个是不是Visual Studio的一个bug,现在还很难说。还有没有更好的解决办法,欢迎提出。
相关文章推荐
- 错误是无法将“XXX”转换为“System.CompenentModel.Design.Serialization.InstanceDescrip”问题的解决办法
- 问题:Custom tool error: Failed to generate code for the service reference 'AppVot;结果:添加Service Reference, 无法为服务生成代码错误的解决办法
- 添加Service Reference, 无法为服务生成代码错误的解决办法
- 添加Service Reference, 无法为服务生成代码错误的解决办法
- 添加Service Reference, 无法为服务生成代码错误的解决办法
- C# 属性的代码生成失败。错误是无法将属性转换为InstanceDescriptor
- 添加Service Reference, 无法为服务生成代码错误的解决办法
- Android Project from Existing Code 生成 R 文件错误、失败等问题解决办法 - 持续更新
- Android Project from Existing Code 生成 R 文件错误、失败等问题解决办法 - 持续更新
- 添加Service Reference, 无法为服务生成代码错误的解决办法
- Win7/Win8中注册控件失败,提示“DllRegisterServer的调用失败,错误代码为0x******** ” 问题的解决办法
- 关于OpenOffice转换失败,源文件无法删除问题的解决办法
- 添加Service Reference, 无法为服务生成代码错误的解决办法
- SharePoint 2010 回收IIS 应用程序池中出现错误: 无法将通信对象System.ServiceModel.InstanceContext用于通信 解决方法
- 对"对DllRegisterServer的调用失败,错误代码为0x8007005"的解决办法
- vs2015 编译后出错 编译器失败,错误代码为 -532462766 解决办法
- 关于错误代码为0x80070643的问题的解决办法
- 调试MVC源代码时"[A]System.Web.WebPages.Razor.Configuration.HostSection 无法强制转换为 ..."解决办法
- EF(Entity Framework)发生错误”正在创建模型,此时不可使用上下文“的解决办法。 正在创建模型,此时不可使用上下文。如果在 OnModelCreating 方法内使用上下文或如果多个线程同时访问同一上下文实例,可能引发此异常。请注意不保证 DbContext 的实例成员和相关类是线程安全的。 临时解决了这个问题,在Context的构造函数中,禁用了自动初始化:
- 解决无法将类型为“System.Web.UI.WebControls.HiddenField”的对象强制转换为类型的错误