Есть ли разница с олицетворением действий контроллера ASP.Net MVC и веб-формы ASP.Net? Используя точно такой же код в том же веб-проекте, я могу успешно олицетворять пользователя Windows при подключении к SQL Server из веб-формы, но не из действия контроллера. Вот пример кода, который я тестирую из каждого:
string sqlQuery = @"SELECT Top 10 FullName FROM Customer";
// Connect to the database server. You must use Windows Authentication;
SqlConnection connection = new SqlConnection("Data Source=ServerName;Initial Catalog=DBName;Integrated Security=SSPI");
// Create a DataTable to store the results of the query.
DataTable table = new DataTable();
// Create and configure the SQL Data Adapter that will fill the DataTable.
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand = new SqlCommand(sqlQuery, connection);
// Execute the query by filling the DataTable.
adapter.Fill(table);
Я проверил пользователя HttpContext на контроллере и в веб-форме, и они выглядят одинаково. Однако при выполнении трассировки SQL действие контроллера всегда выполняется как сетевая служба, а веб-форма работает как пользователь. Будем весьма благодарны за любые разъяснения, почему эти двое ведут себя по-разному и как имитировать действия контроллера.