Я использую отражение для вызова метода во внешней сборке.Внешний класс / метод находится в службе данных WCF.
Служба данных WCF использует информацию, загруженную из пользовательского раздела конфигурации в web.config,
<configSections>
<section name="myCustomSection" type="MyWcfService.MyCustomSection, MyWcfService" />
</configSections>
Загрузка переменных конфигурации работает нормально в службе wcf, но не при попытке вызвать ееметоды через отражение через отдельное приложение.Я попытался поместить информацию о конфигурации в локальный app.config, но я получаю ту же ошибку.
Это код в локальном приложении:
Assembly assembly = Assembly.LoadFile
("C:\\MyProject\\MyWcfService.dll");
Type[] t = assembly.GetTypes();
foreach (var v in t)
{
if (v.Name == "MyType")
{
var instance = Activator.CreateInstance(v);
v.InvokeMember("MyMethod", BindingFlags.InvokeMethod, null, instance, null);
}
}
А это код из внешней сборки (службы wcf), который выдает ошибку,
MyCustomSection configSection = ConfigurationManager.GetSection("myCustomSection")
as MyCustomSection ;
configSection подходит к нулю - «ссылка на объект не установлена для экземпляра объекта».
Если он ищет в локальных приложениях app.config, а не web.config, добавляя ту же информацию конфигурации локальнодолжен работать, я бы подумал.
Спасибо.