首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >反序列化过程中的异常

反序列化过程中的异常
EN

Stack Overflow用户
提问于 2012-10-08 07:40:50
回答 2查看 87关注 0票数 0

我写了一个dll,它有几个类。其中一个叫做DataDesign。

代码语言:javascript
复制
[Serilizible]
public class DataDesign
    {
        [NonSerialized]
        HorizantalFields _horizantalFields;
        [NonSerialized]
        VerticalFields _verticalFields;
        [NonSerialized]
        GeneralDataDesignViewType _dataDesignView;
        [NonSerialized]
        Dictionary<FieldTemplateType, string> _templateTable;
        [NonSerialized]
        public List<string> ProcessedData;

        List<IField> _fields; 
    }

当我在我的应用程序中使用这个dll时,我在正确的处理过程中遇到了问题。塞里林最终取得了成功。但在反序列化方面,我有一个例外。

例外是

“找不到程序集'AnalyzingData,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null‘。”

AnalyzingData是dll的名称。

代码语言:javascript
复制
DeSerilizeClass()
{
                    BinaryFormatter bin = new BinaryFormatter();
                    dataDesign=new DataDesign();

                    DataDesign dd= (DataDesign)bin.Deserialize(stream);
}

Serilize()
{
                    using (FileStream sr = new FileStream(String.Format(@"{0}\{1}", Parameters.SavedConfigurationsDirectory, dataDesignName),FileMode.CreateNew, FileAccess.Write))
                    {
                        BinaryFormatter bin = new BinaryFormatter();
                        bin.Serialize(sr, this);
                    }
}

//此数据设计类

我怎么能解决这个问题?

MS视觉Studio2010。Windows 7感谢您的关注!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-08 07:46:10

不管是什么进程,反序列化都需要访问您的AnalyzingData Dll,也就是说,它需要位于应用程序的bin文件夹中或它可以从其中加载的其他位置。

票数 2
EN

Stack Overflow用户

发布于 2012-10-08 07:46:23

BinaryFormatter序列化图形中的具体对象。即使您将某些内容公开为IFieldBinaryFormatter也只查看实际的SomeTypeOfField : IField实例。这意味着要反序列化此数据,您需要序列化数据时正在使用的程序集。听起来,当您序列化时,它从AnalyzingData程序集中获得了一些类型(在图中)。这意味着要反序列化此数据,您将再次需要该程序集。

有一些使用Binder的复杂方法,但在大多数情况下,我建议选择一个映射到您的场景的序列化程序:如果您想反序列化而不使用相同的原始类型/程序集,那么您应该使用基于合同的序列化程序。

或者,只需查找AnalyzingData.dll,并添加对其的引用,以便将其与应用程序一起部署(也将副本本地设置为true )。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12777289

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档