Доброе время суток!
Почти год изучаю программирование на С# но это первое обращение за помощью.
Проблема в следующем - в Windows Form вводятся данные и выполняются расчёты, которые сохраняются (сериализуются) в бинарном файле.
Сами данные - реализация класса многоуровнего, со встроенными списками и т.д. оформленного в отдельный DLL (EE_LigtingVarDLL)
Загрузке данного бинарного файла обратно в Windows Form для редактирования проходит без проблем.
При попытке загрузить из ACAD (для вывода собственно в графическом виде), выходит исключение:
{"Не удалось найти сборку \"EE_LigtingVarDLL, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null\"."}.
Немного походив по форумам процедуру чтения-записи оформил тоже в DLL (MyIO)
Но ничего не изменилось.
текст DLL (MyIO):
using EE_LightingVarDLL;
using System;
using System.Collections.Generic;
using System.IO;
using System.IO.Compression;
using System.Linq;
using System.Runtime.Serialization.Formatters.Binary;
using System.Text;
using System.Threading.Tasks;
namespace MyIO
{
public class My_IO_DLL
{
public LightingVar LoadConfiguration(string filename)//Процедура считывания из файла
{
LightingVar serLv = null;
try
{
using (Stream stream = File.Open(filename, FileMode.Open))
{
BinaryFormatter bformatter = new BinaryFormatter();
serLv = (LightingVar)bformatter.Deserialize(stream);
stream.Close();
}
serLv.errorIO = false;
}
catch (Exception ex)
{
}
return serLv;
}
public string SaveConfiguration(string filename, LightingVar lv)//Процедура сохранения в файл
{
try
{
using (Stream stream = File.Open(filename, FileMode.Create))
{
BinaryFormatter bformatter = new BinaryFormatter();
bformatter.Serialize(stream, lv);
stream.Close();
}
return "OK";
}
catch (Exception ex)
{
return ex.Message;
}
}
}
}
Исключение выходит на строке:
serLv = (LightingVar)bformatter.Deserialize(stream);
конкретно при прохождении stream
Несколько дней сижу с этой проблемой, не знаю что делать. Сам я чертёжник, пишу для оптимизации своего труда, коллеги ничего в программировании не смыслят.
Заранее спасибо.