我们有一个 ASP.NET 2.0 Web 表单应用程序,它曾经通过 Web 部署项目进行部署。最近我们部署了一个由 TFS/MSBuild 构建的新版本,该更改似乎导致了自定义配置文件对象的反序列化问题。
这是 web.config 中配置文件/属性部分中的条目。
<add name="MyKey" type="OurApp.UserData" serializeAs="Binary" />
这并没有因为构建过程而改变,OurApp.UserData 也没有改变。
但是,当应用程序尝试读取给定用户的数据时,什么也找不到。
一个明显的区别是,在 Web 部署版本中,为网站创建了一个 OurApp.dll,而新版本由多个“名称混乱”的程序集组成。这会导致配置文件错过读取存储在 OurApp.UserData 类型中的属性吗?