Я пытаюсь попробовать DBLinq с провайдером sqlite в простой сети ASP.NET
оказание услуг. Я также использую MonoDevelop 2.4 и Mono 2.6.7, проект
в monodevelop ссылается на DbLinq.dll, который по умолчанию установлен в
Локальная копия. Я могу скомпилировать веб-сервис просто отлично. Когда я пытаюсь
запустить его из Monodevelop или с помощью xsp2 из командной строки, xsp2
терпит неудачу с рядом ошибок (см. ниже). Если я снял флажок Местный
Скопируйте для ссылки DBLinq.dll, xsp2 будет выполняться, но часть Linq
кода не работает. Это также верно для провайдера MySQL. Я думаю, что проблема в том, что когда на DbLinq ссылаются и локально копируют, он также копирует зависимый
сборки и одна из сборок вызывает удушье xsp2.
Кто-нибудь сталкивался с этим? Как я могу решить проблему или что такое
обходной путь? Любая помощь очень ценится. Ниже образец
фрагмент метода веб-сервиса в коде asmx.
[WebMethod]
публичная строка getrecord ()
{
string txt = string.Empty;
using( DataContext context =
new DataContext("DbLinqProvider=Sqlite; Data Source=openemr.db"))
{
var addrtbl = context.GetTable<Addresses>();
var addr = from a in addrtbl
select a;
foreach( var i in addr)
{
txt += i.City ;
txt += "; ";
}
}
return txt;
}
Конечно, это не может быть хорошим способом реализации доступа к данным и
нужно будет разделить проблемы. Но для целей тестирования это
должен хотя бы работать.
Вот ошибка, которую я получаю при запуске xsp2. Как я уже говорил выше, один из
зависимые сборки, на которые ссылается DbLinq и которые копируются локально,
заставляя это случиться. Мой вопрос, как мне лучше это исправить, чтобы это
работает?
user @ ubuntu: ~ / Projects / WebService / WebService $ xsp2 - адрес
127.0.0.1 - порт 8889
** (/usr/lib/mono/2.0/xsp2.exe:2566): ПРЕДУПРЕЖДЕНИЕ **: отсутствует метод
System.Web.Configuration.WebConfigurationManager :: get_AppSettings () в
Сборка /usr/lib/mono/gac/System.Web/2.0.0.0_b03f5f7f11d50a3a/
System.Web.dll, на который есть ссылка в сборке /usr/lib/mono/gac/Mono.Web/
2.0.0.0 _0738eb9f132ed756 / Mono.Web.dll
** (/usr/lib/mono/2.0/xsp2.exe:2566): ПРЕДУПРЕЖДЕНИЕ **: отсутствует метод
System.Configuration.ConfigurationProperty ::. Т е р (строка, тип, объект, TypeConverter, ConfigurationValidatorBase, ConfigurationPropertyOptions)
в сборке / home / ellory / Проекты / WebService / WebService / bin /
System.Configuration.dll, на который есть ссылка в сборке / usr / lib / mono / gac /
System.Web / 2.0.0.0__b03f5f7f11d50a3a / System.Web.dll
** (/usr/lib/mono/2.0/xsp2.exe:2566): ПРЕДУПРЕЖДЕНИЕ **: отсутствует метод
System.Configuration.ConfigurationProperty ::. Т е р (строка, тип, объект, TypeConverter, ConfigurationValidatorBase, ConfigurationPropertyOptions)
в сборке / home / ellory / Проекты / WebService / WebService / bin /
System.Configuration.dll, на который есть ссылка в сборке / usr / lib / mono / gac /
System.Web / 2.0.0.0__b03f5f7f11d50a3a / System.Web.dll
** (/usr/lib/mono/2.0/xsp2.exe:2566): ПРЕДУПРЕЖДЕНИЕ **: отсутствует метод
System.Configuration.ConfigurationProperty ::. Т е р (строка, тип, объект, TypeConverter, ConfigurationValidatorBase, ConfigurationPropertyOptions)
в сборке / home / ellory / Проекты / WebService / WebService / bin /
System.Configuration.dll, на который есть ссылка в сборке / usr / lib / mono / gac /
System.Web / 2.0.0.0__b03f5f7f11d50a3a / System.Web.dll
** (/usr/lib/mono/2.0/xsp2.exe:2566): ПРЕДУПРЕЖДЕНИЕ **: отсутствует метод
System.Configuration.ConfigurationProperty ::. Т е р (строка, тип, объект, TypeConverter, ConfigurationValidatorBase, ConfigurationPropertyOptions)
в сборке / home / ellory / Проекты / WebService / WebService / bin /
System.Configuration.dll, на который есть ссылка в сборке / usr / lib / mono / gac /
System.Web / 2.0.0.0__b03f5f7f11d50a3a / System.Web.dll
Обработка типа исключения TargetInvocationException
Сообщение «Исключение» было выдано целью вызова.
IsTerminating имеет значение True
System.Reflection.TargetInvocationException: было сгенерировано исключение
целью вызова.
Трассировка стека серверов:
в System.Reflection.MonoCMethod.Invoke (System.Object obj,
BindingFlags invokeAttr, System.Reflection.Binder binder,
SystПараметры em.Object [], культура System.Globalization.CultureInfo) [0x00000] in: 0 в System.Reflection.MonoCMethod.Invoke (связывание BindingFlags invokeAttr, System.Reflection.Binder, параметры System.Object [], System.Globalization.CultureInfo culture) [0x00000] в: 0 в System.Reflection.ConstructorInfo.Invoke (параметры System.Object []) [0x00000] в: 0 в System.Activator.CreateInstance (тип System.Type, логический nonPublic) [0x00000] в: 0 в System.Configuration.ConfigInfo.CreateInstance () [0x00000] в: 0 в System.Configuration.SectionInfo.CreateInstance () [0x00000] в: 0 в System.Configuration.Configuration.GetSectionInstance (System.Configuration.SectionInfo config,Boolean createDefaultInstance) [0x00000] в: 0 в System.Configuration.ConfigurationSectionCollection.get_Item (имя System.String) [0x00000] в: 0 в System.Configuration.Configuration.GetSection (путь System.String) [0x00000] в: 0 вSystem.Web.Configuration.WebConfigurationManager.GetSection (System.String sectionName, путь System.String, контекст System.Web.HttpContext) [0x00000] в: 0 в System.Web.Configuration.WebConfigurationManager.GetSection (System.String sectionName, System.String path) [0x00000] в: 0 в System.Web.Configuration.WebConfigurationManager.0x00000] in: 0 at (обертка remoting-invoke-with-check) System.AppDomain: DoCallBack (System.CrossAppDomainDelegate) в (wrapper xdomain-dispatch) System.AppDomain: DoCallBack (объект, байт [] &, байт [] &)
Исключение, переброшенное в [0]: ---> System.TypeInitializationException: Исключение было сгенерировано инициализатором типа для System.Web.Configuration.HostingEnvironmentSection ---> System.MissingMethodException: Метод не найден:'System.Configuration.ConfigurationProperty..ctor.--- Конец трассировки стека внутренней исключительной ситуации --- at (управляемая оболочкой) System.Reflection.MonoCMethod: InternalInvoke (объект, объект [], System.Exception &) в System.Reflection.MonoCMethod.Invoke (System.Объект obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object [] параметры, System.Globalization.CultureInfo culture) [0x00000] in: 0 --- Конец трассировки стека внутренней исключительной ситуации --- at (обертка xdomain-invoke) System.AppDomain: DoCallBack (System.CrossAppDomainDelegate) в (удаленное взаимодействие-вызов-обертка) System.AppDomain: DoCallBack (System.CrossAppDomainDelegate) в System.Web.Hosting.ApplicationHost.CreateApplicationHost (System.TepeTT).String virtualDir, System.String PhysicalDir) [0x00000] в: 0 в Mono.WebServer.VPathToHost.CreateHost (сервер Mono.WebServer.ApplicationServer, Mono.WebServer.WebSource webSource) [0x00000] в: 0 в Mono.WS.Server.RealMain (аргументы System.String [], логический корень, IApplicationHost ext_apphost, логический тихий) [0x00000] in: 0 at (обертка, удаленное взаимодействие, вызов с проверкой) Mono.WebServer.XSP.Server: RealMain (string [], bool, Mono.WebServer.IApplicationHost, bool) в Mono.WebServer.XSP.Server.Main(System.String [] args) [0x00000] в: 0