powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Проблемы с передачей параметров а AppDomain
3 сообщений из 3, страница 1 из 1
Проблемы с передачей параметров а AppDomain
    #37484653
dMazay82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго времени суток.

Подскажите пожалуйста как правильно передать в AppDomain переменную типа СвойКласс а лучше List<СвойКласс>.

Пример
Свой Класс
Код: plaintext
1.
2.
3.
4.
5.
6.
[Serializable]
public class DocItem 
{
    public string path;
    public string code;
    public OperType type;
}

Попытка передать в AppDomain
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
   
            DocItem item = new DocItem();
            List<DocItem> docList = new List<DocItem>();
...........
            AppDomain appDomain = null;
            AppDomainSetup appDomainSetup = new AppDomainSetup();
            appDomainSetup.ShadowCopyFiles = "false";
            appDomainSetup.ApplicationBase = AppDomain.CurrentDomain.BaseDirectory;
            appDomainSetup.PrivateBinPath = Constants.pathToBin;
            appDomain = AppDomain.CreateDomain("new domain", AppDomain.CurrentDomain.Evidence, appDomainSetup);

            Worker worker = (Worker)appDomain.CreateInstanceFromAndUnwrap(
                      typeof(Worker).Assembly.Location, typeof(Worker).FullName);

            worker.PrintByItem(item); //1
            или            
            worker.PrintByList(docList); //2
Worker уже работающий класс, в новых функциях PrintByItem,PrintByList идет только запись в лог.

В результате получаю следующие исключения
1) Не разрешен тип члена "DocItem,App_Code.soyeeuha, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null".
2)Невозможно загрузить файл или сборку "App_Code.soyeeuha, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null" или один из зависимых от них компонентов. Не удается найти указанный файл.

Подскажите пожалуйста как правильно сделать.
...
Рейтинг: 0 / 0
Проблемы с передачей параметров а AppDomain
    #37488573
dMazay82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UP
...
Рейтинг: 0 / 0
Проблемы с передачей параметров а AppDomain
    #37489393
dMazay82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пробовал передать список следующим образом
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Worker.DocItem item = new Worker.DocItem();
List<Worker.DocItem> itemList = new List<Worker.DocItem>();
foreach (int i in lbRegName.GetSelectedIndices()) {
    item.path = Constants.pathToReports + getReportByValue(lbRegName.Items[i].Value);                   
    item.code = lbRegName.Items[i].Value.ToString();
    itemList.Add(item);
}
if (list != null) {
using (MemoryStream stream = new MemoryStream()){
    BinaryFormatter bin = new BinaryFormatter();
    bin.Context = new StreamingContext(StreamingContextStates.Clone);
    bin.Serialize(stream, itemList);
    worker.PrintByList(stream);
}      

но в процедуре worker.PrintByList
Код: plaintext
1.
2.
3.
4.
5.
6.
public void PrintByList(MemoryStream itemList) {
  List<DocItem> item = new List<DocItem>();
  BinaryFormatter bin = new BinaryFormatter();
  bin.Context = new StreamingContext( StreamingContextStates.Clone );
  itemList.Position = 0;
  item = (List<DocItem>)bin.Deserialize(itemList); <-- exception here
}

Получаю сообщение Could not load file or assembly "App_Code.soyeeuha, Version = 0.0.0.0, Culture = neutral, PublicKeyToken = null" or one of its dependencies. Can not find the file specified.
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Проблемы с передачей параметров а AppDomain
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]