C # - Исключение «Не удается найти сборку» во время двоичной десериализации в плагине Autocad - PullRequest
0 голосов
/ 30 апреля 2011

У меня есть класс с именем StructureInfo , который сериализуемый и имеет статические методы Load и Save:

public class StructureInfo
{
    //Some Fields and properties Here..

    public static void Save(string fileName,StructureInfo inf)
    {
        var ms = System.IO.File.OpenWrite(fileName);

        var formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
        formatter.Serialize(ms, inf);
        ms.Flush();
        ms.Close();
        ms.Dispose();
    }

    public static StructureInfo Load(string fileName)
    {
        var formatter = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();

        object obj = formatter.Deserialize(System.IO.File.Open(fileName, System.IO.FileMode.Open));

        var buf = (StructureInfo)obj;
        return buf;
    }
}

У моего решения VisualStudio есть три проекта: одна - это библиотека классов, содержащая StructureInfo class и некоторая другая классификация с именем 'StructuralAnalysis'; одно приложение WPF, имеющее отношение к структурированию. один плагин Autocad, имеющий отношение к структурированию. Ссылка.

Когда я вызываю метод StructureInfo.Load из приложения WPF, все хорошо, и не исключение. но когда StructureInfo.Load метод из AutocadPlugin вызывается в этой строке:

object obj = formatter.Deserialize(System.IO.File.Open(fileName, System.IO.FileMode.Open));

и SerializationException С этим сообщением выдается: Невозможно найти сборку 'StructuralAnalysis, версия = 0.0.4129.29330, культура = нейтральная, PublicKeyToken = null';

как мне Deserialize и StructureInfo в плагине autoCad? заранее спасибо ..

...