我们有一个ASP.NET 2.0 Web表单应用程序,该应用程序曾经通过Web部署项目部署。最近,我们部署了由TFS/MSBUILD构建的新版本,而更改似乎引起了自定义配置文件对象的绝对序列化问题。

这是Web.config中我们的个人资料/属性部分中的条目。

<add name="MyKey" type="OurApp.UserData" serializeAs="Binary" />

由于构建过程没有改变,我们的app.userdata也没有改变。

但是,当应用程序试图为给定用户读取数据时,找不到任何东西。

一个明显的区别是,在Web部署版本中,为该网站创建了一个ureApp.dll,而新版本由多个“名称”组成组成。这是否会导致配置文件错过阅读我们的App.userdata类型中存储的属性?

有帮助吗?

解决方案

实际上,答案确实是集会名称。将ASPNET_MERGE步骤添加到构建过程并生成旧名称的组件后,一切都很好。

可能表明这表明配置文件序列化例程将完全合格的类名称嵌入代表对象的二进制数据中。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top