Сбой Sage200c SDK в веб-формах - PullRequest
       63

Сбой Sage200c SDK в веб-формах

0 голосов
/ 14 февраля 2019

У нас возникла проблема с Sage 200c Extra 2018 SDK при использовании в веб-формах.

Мы создали решение с библиотекой, формой win win и проектом веб-форм.Мы заметили, что при использовании «проекта Win Forms» это работает, но тот же пример в «проекте Web Forms» дает сбой.В документации Sage 200c SDK не говорится исключительно о Win или веб-формах и о том, какая конфигурация может понадобиться каждому.Не могли бы вы помочь нам заставить это работать в веб-формах?У нас есть более старая версия SDK, работающая над более старой версией Sage 200 v8.Мы обновили Sage 200 v8 до Sage 200c Extra 2018 Summer Enhancements и протестировали его с новым клиентом, и все работает.Я заметил в sage City похожие вопросы, но не получил ответа.

Здесь

Вот наш пример кода:

Private Shared Sub FindCore200()

        ' get registry info for Sage 200 server path
        Dim path As String = String.Empty
        Dim root As RegistryKey = Registry.CurrentUser
        Dim key As RegistryKey = root.OpenSubKey(REG_PATH)

        If key IsNot Nothing Then

            Dim value As Object = key.GetValue(REGKEY_VALUE)
            If value IsNot Nothing Then

                path = TryCast(value, String)

            End If

        End If

        ' refer to all installed assemblies based on location of default one
        If String.IsNullOrEmpty(path) = False Then

            Dim commonDllAssemblyName As String = System.IO.Path.Combine(path, DEFAULT_ASSEMBLY)
            If (System.IO.File.Exists(commonDllAssemblyName)) Then

                Dim defaultAssembly As System.Reflection.Assembly = System.Reflection.Assembly.LoadFrom(commonDllAssemblyName)
                Dim type As Type = defaultAssembly.[GetType](ASSEMBLY_RESOLVER)
                Dim method As MethodInfo = type.GetMethod(RESOLVER_METHOD)
                Dim x = method.Invoke(Nothing, Nothing)
                Dim ok = 1
            End If

        End If

    End Sub

при запуске приложения, всегда происходит сбой

application = New Sage.Accounting.Application

Тип исключения: System.TypeInitializationException Сообщение: инициализатор типа для 'Sage.Accounting.Application' вызвал исключение.

Внутреннее исключение: Тип исключения: System.IO.FileNotFoundException Сообщение: не удалось загрузить файл или сборку 'Sage.MMSAdmin.Util, версия = 19.0.0.0, культура = нейтральная, PublicKeyToken = b2daa66d74953d11' или одна из ее зависимостей.Система не может найти указанный файл.

1 Ответ

0 голосов
/ 18 февраля 2019

Направлены ли ваши пулы приложений на правильную версию .net и битовую архитектуру?

Если вы можете физически увидеть сборку в пути, но приложение не может, обычно это происходит из-за неправильной версии.net настроен.Переход от такой старой версии к новой, скорее всего, требует изменения версии .net (например, с 2.0 на 4.5).Может случиться так, что ваше решение winforms настроено на правильную конфигурацию, и вам определенно стоит сравнить ваши настройки сборки и приложения.Убедитесь, что вы используете правильную архитектуру процессора в вашей сборке.

...