Встроенный веб-сервер разработки в Visual Studio (Cassini) не знает <system.webServer>
, только IIS7.x или IIS7.5 Express будут использовать эти параметры.
Также типы содержимого статических файловв веб-сервере разработки Visual Studio жестко запрограммированы.
С Microsoft.VisualStudio.WebHost.Connection
(разобран с помощью .NET Reflector):
private static string MakeContentTypeHeader(string fileName)
{
string str = null;
FileInfo info = new FileInfo(fileName);
switch (info.Extension.ToLowerInvariant())
{
case ".bmp":
str = "image/bmp";
break;
case ".css":
str = "text/css";
break;
case ".gif":
str = "image/gif";
break;
case ".ico":
str = "image/x-icon";
break;
case ".htm":
case ".html":
str = "text/html";
break;
case ".jpe":
case ".jpeg":
case ".jpg":
str = "image/jpeg";
break;
case ".js":
str = "application/x-javascript";
break;
}
if (str == null)
{
return null;
}
return ("Content-Type: " + str + "\r\n");
}
Если честно, с появлением IIS7.5 Express Iне могу понять, почему вы хотите использовать встроенный веб-сервер.Cassini может быть причиной такой путаницы, когда речь идет о времени развертывания на производственном сервере, потому что это не что иное, как реальная сделка (безопасность, конфигурация и т. Д.), В то время как если вы можете запустить свой сайт на IIS7.5 Express, то это довольно высокаявероятность того, что развертывание на производственном сервере IIS7.5 будет «просто работать».
Я не удивлюсь, если Microsoft выдернет сервер Cassini из следующей версии Visual Studio, учитывая, насколько легко работать с IIS7.5 Экспресс.