У меня есть проект Biztalk 2006 R2 (используемый с ESB Guidance 1). Я вызываю из оркстрации статический метод в коде C #, этот метод использует класс для загрузки данных файла в тело сообщения xlang в части 0 Когда я передаю путь к файлу, который не не существует внутреннего класса, который улавливает исключение, но не вызывает его (в статическом методе есть блок catch, а в оркестровке есть реальная обработка исключения)
Статический метод:
public static XLANGMessage LoadFileIntoMessage(XLANGMessage message, string filePath,Encoding encoding)
{
try
{
IStreamFactory sf = new FileStreamFactory(filePath,encoding);
message[0].LoadFrom(sf);
return message;
}
catch (Exception ex)
{
throw ex;
}
}
Класс, загружающий файловый поток:
private class FileStreamFactory : IStreamFactory
{
string _fname;
Encoding _encoding;
public FileStreamFactory(string fname,Encoding encoding)
{
_fname = fname;
_encoding = encoding;
}
public Stream CreateStream()
{
try
{
StreamReader sr;
sr = new StreamReader
(
_fname,
_encoding
);
return sr.BaseStream;
}
catch (Exception ex)
{
throw ex;
}
}
}
Я вызываю статический метод из оркестровки и ожидаю поймать исключение в моей оркестровке после того, как класс и метод его получит.