Я очень плохо знаком с ASP.NET и застрял в этой проблеме на долгое время.У меня есть приложение WPF (.NET Framework), которое в настоящее время работает.Это программа, используемая для управления каким-либо внешним устройством (роботом).У меня есть проект C # этого приложения WPF как редактируемый проект в моей Visual Studio 2017.
Я хочу использовать эту программу (приложение WPF) для развертывания службы веб-API и использовать функцию в приложении WPF извеб-API, например, у меня есть команда A.FORWARD
для перемещения робота вперед по кнопке в приложении WPF, я хочу создать службу веб-API, вызывающую localhost:XXXX/api/moveforward
для вызова этой команды (A.FORWARD
).
Сначала я попытался создать службу веб-API с помощью .NET Framework 4.6.1 и скопировать в нее код и зависимости для управления роботом из приложения WPF.Но после развертывания веб-API я обнаружил, что внешнее устройство (робот) недоступно из веб-API.
Затем, во-вторых, я попытался скопировать весь код для развертывания службы API в приложение WPF.Но я обнаружил, что служба API не будет работать (Application_Start()
в Global.asax.cs
), и не могу заставить ее работать.
Чтобы принудительно запустить приложение WPF API, я скопировал все необходимые файлы, особенно Global.asax.cs
для запуска API, который содержит это
public void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
... и я добавляю его к вызову, нажав какую-то кнопку из MainWindow.xaml.cs
.
public void ButtonEmotion_Click(object sender, RoutedEventArgs e)
{
new Global().Application_Start();
}
, эти усилия говорят:
Возникло исключение: System.InvalidOperationException в System.Web.dll Произошло необработанное исключение типа «System.InvalidOperationException» в System.Web.dll.Этот метод не может быть вызван на этапе начальной инициализации приложения.