Установка метода веб-формы в STAThread

Я разрабатываю веб-приложение на С# с VS 2012.

У меня есть датчик отпечатков пальцев с его dll в формате Windows Forms. Я разрабатываю веб-приложение, поэтому мне нужно сообщить два проекта.

Но датчик отпечатков пальцев нуждается в среде STAThread, так как Windows формирует ее. Как я могу установить STAThread в веб-форму? я пробую это

    [STAThread]
    protected void Page_Load(object sender, EventArgs e)
    {
        //code of fingerprint
    }

но не сработало, у меня есть исключение ThreadStateException, которое говорит о том, что подпроцесс не находится в контейнере однопоточного. Помоги мне! Спасибо!


person José Persichini    schedule 25.04.2014    source источник
comment
Я не думаю, что вы можете сделать это на клиенте (в Интернете) простым способом. Я думаю, что вы не можете сделать, кроме как веб-сервис общаться с вашим устройством. Я сделал что-то подобное, но это было для принтера, и я использовал службу asmx.   -  person kostas ch.    schedule 25.04.2014
comment
Хорошо, спасибо, но как мне запустить веб-службу в STAThread?   -  person José Persichini    schedule 25.04.2014
comment
В моем случае я использовал службу asmx для отправки печати на выбранный принтер. В вашем случае все может быть иначе. Вы можете создать элемент управления ActiveX, который сделает это за вас, или компонент Silverlight.   -  person kostas ch.    schedule 25.04.2014
comment
Actrivex или silverlight установлены на машине клиента. Так что я думаю, вы можете получить доступ к своему устройству.   -  person kostas ch.    schedule 25.04.2014
comment
Но если я могу настроить веб-службу на STAThread, смогу ли я осуществлять связь?   -  person José Persichini    schedule 25.04.2014
comment
Я сожалею, но я не знаю. Для принтера работает вроде вредно. Попробуй это.   -  person kostas ch.    schedule 25.04.2014


Ответы (1)


Вы не должны использовать STAThread в веб-приложении.

Вам лучше создать сервис, который стоит между датчиком отпечатков пальцев и вашим веб-приложением. Служба будет работать в STA и предоставлять методы для использования веб-приложением.

person Nick    schedule 25.04.2014
comment
Нет, не создавайте веб-сервис. Создайте службу Windows: - person Nick; 25.04.2014
comment
Вот ссылка: msdn.microsoft.com/ en-us/library/d56de412(v=vs.110).aspx. - person Nick; 25.04.2014