Я улучшаю существующий проект WPF с протоколом TCP/IP, который отправляет и принимает небольшие объекты. Я использую Visual Studio 10, но я застрял. Я использую BinaryFormatter для сериализации объектов, и до тех пор, пока я не использовал для отправки и получения с двумя классами в одном проекте, у меня не было проблем, но когда я разделял слушателя и отправителя (TCPListener и TCPCLient) во время выполнения, у меня была эта ошибка: «Не удается найти Assembly 'ProjectName, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null'".Visual Studio WPF Assembly и решение DLL
Googling Я выяснил, что проблема может быть решена путем создания внешней dll, вызванной из основной программы, но я не знаю, как передать MainWindow в dll, потому что библиотека даже не может найти типы WPF (такие как MainWindow , Combobox или текстовое поле)
Помогите мне с этой проблемой dll или у вас есть какие-либо идеи для решения проблемы с ссылкой на сборку?
Спасибо за ответ. Я следовал вашим советам, но я понял, что проблема была в другом месте. Я читал, что для десериализации требуется одна и та же подпись dll для форматирования, поэтому я создал внешнюю dll, которая предлагает построить BinaryFormatter и экспортировать его в каждый путь программы. Таким образом, каждый экземпляр приложения будет находить одну и ту же подпись на BinaryFormatters и выполнять сериализацию/десериализацию в «безопасном» режиме. Я нахожу это немного сложным (почему бы не разрешить вынужденную десериализацию), но решил. Спасибо за доступность! – user2351528