错误渲染控制 - [A] 无法在上下文 LoadNeither 中转换为 [B]
我正在开发一个复合控件,这需要我打开多个 Visual Studio IDE 并在页面上添加该控件。
这会导致 Visual Studio 创建多个程序集。
因此,每次发生这种情况时,我都会关闭所有 IDE,并删除 ProjectAssemblies 文件夹。
这一切可以避免吗?这样工作非常困难...
更新:
具体错误是:
发生了未处理的异常。 [A]VerySimpleEditor.Toolbars 不能 转换为 [B]VerySimpleEditor.ToolBars。 A型起源于 '非常简单编辑器,版本=1.0.0.0, Culture=neutral,PublicToken=null' 中 位置处的上下文“LoadNeither” C:\Documents and Settings\Mark\Local 设置\应用程序 数据\Microsoft\VisualStudio\9.0\ProjectAssemlies\j-wxrc_j01\verysimpleeditor.dll。 B型起源于 '非常简单编辑器,版本=1.0.0.0, Culture=neutral, PublicToken=null' 中 位置处的上下文“LoadNeither” C:\Documents and Settings\Mark\Local 设置\应用程序 数据\Microsoft\VisualStudio\9.0\ProjectAssemlies\bkqrbe-r01\VerySimpleEditor.dll。
当我尝试像这样进行转换时:
using (System.IO.Stream textReader = typeof(TheEditor).Assembly.GetManifestResourceStream("VerySimpleEditor.Toolbar.xml"))
{
XmlSerializer deserializer = new XmlSerializer(typeof(ToolBars));
ToolBars ob = (ToolBars)deserializer.Deserialize(textReader);
}
控件项目(dll)和网站项目位于一个解决方案中,在重新编译控件后,我将控件从工具箱拖动到网页。
每当我重新编译控件并将其添加到页面时,都会发生此错误,当我重新启动 Visual Studio 并添加控件时,它就会起作用。
I am working on a composite control and this requires me to open multiple Visual studio IDEs and add the control on pages.
This causes Visual Studio to create multiple assemblies.
So every time this happens I close all IDEs, and delete ProjectAssemblies folder.
Can all this be avoided? It's very hard to work like that...
UPDATE:
The specific error is:
An unhandled exception has occured.
[A]VerySimpleEditor.Toolbars cannot be
cast to [B]VerySimpleEditor.ToolBars.
Type A originates from
'VerySimpleEditor, Version=1.0.0.0,
Culture=neutral,PublicToken=null' in
the context 'LoadNeither' at location
C:\Documents and Settings\Mark\Local
Settings\Application
Data\Microsoft\VisualStudio\9.0\ProjectAssemlies\j-wxrc_j01\verysimpleeditor.dll.
Type B originates from
'VerySimpleEditor, Version=1.0.0.0,
Culture=neutral, PublicToken=null' in
the context 'LoadNeither' at location
C:\Documents and Settings\Mark\Local
Settings\Application
Data\Microsoft\VisualStudio\9.0\ProjectAssemlies\bkqrbe-r01\VerySimpleEditor.dll.
When I try try to cast like this:
using (System.IO.Stream textReader = typeof(TheEditor).Assembly.GetManifestResourceStream("VerySimpleEditor.Toolbar.xml"))
{
XmlSerializer deserializer = new XmlSerializer(typeof(ToolBars));
ToolBars ob = (ToolBars)deserializer.Deserialize(textReader);
}
The Control project (dll) and web site project are in one solution, i drag the control from toolbox to the webpage, after re-compiling control.
Any time I recompile control and add it to the page this error occurs, when I restart Visual studio and add the control, it works.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
为了使这项工作正常进行,您需要将控制项目和测试项目放入两个不同的解决方案中。该问题是必须调试另一个正在运行的 Visual Studio 实例的问题所特有的。你会看到这个 如果您也使用 Visual Studio 加载项。
In order to make this work you'll need to put the control project and the test project in two different solutions. The problem is unique to issues where you have to debug another running instance of Visual Studio. You'll see this if you work on Visual Studio add-ins, too.
尝试删除这两个文件夹:
...并让 Visual Studio 生成它需要的内容。
这对我有用。
Try deleting both folders:
... and letting visual studio generates what it needs.
That worked for me.