Для чего используется System.Web.Razor.xml? - PullRequest
3 голосов
/ 29 июня 2011

Когда вы добавляете зависимости развертывания MVC и Razor, я получаю намного * на 1002 * больше сборок, чем я ожидал.Но я также получаю множество файлов XML.А именно:

  • Microsoft.Web.Infrastructure.xml
  • System.Web.Helpers.xml
  • System.Web.Razor.xml
  • System.Web.WebPages.Deployment.xml
  • System.Web.WebPages.Razor.xml
  • WebMatrix.Data.xml
  • WebMatric.WebData.xml

Для чего они?Похоже, что они не нужны для работы развернутого сайта ASP.NET MVC и Razor, но я хотел бы знать, для чего они нужны и почему, или если они мне действительно нужны, прежде чем я начну говорить людям: «Нет,вам определенно не нужны они для запуска приложений MVC 3 ".Плюс, мне просто интересно.

Ответы [ 4 ]

7 голосов
/ 29 июня 2011

Эти XML-файлы содержат дополнительные метаданные документации (например, описания классов / методов), которые Visual Studio использует при отображении подсказок intellisense.

Они вообще не нужны во время сборки или выполнения и используются только при кодировании с использованием Visual Studio IDE.

5 голосов
/ 29 июня 2011

Namespace.xml файлы являются файлами документации. Он содержит три комментария косой черты о классах, методах, свойствах, ...

Вы можете создавать из своих файлов, для этого перейдите на Project Settings > Build > XML Documentation File. Он будет извлекать /// комментариев из вашего кода для генерации документации.

Пример:

/// <summary>
/// Crops image on the given Point and Size
/// </summary>
/// <param name="img">Current Image</param>
/// <param name="xy">Point X, Y</param>
/// <param name="wh">Size Width, Height</param>
/// <returns></returns>
public static Image Crop(this Image img, Point xy, Size wh)
{
    return img.Crop(new Rectangle(xy, wh));
}

Тогда, если вы отправите DLL кому-то, у него не обязательно будет код, поэтому у него не будет этой документации, и VS intelisense не найдет никакой информации о методе. С помощью XML-файла они могут видеть информацию о методе даже без кода.

Из MSDN:

Чтобы уточнить, не требуется при развертывании на ваших производственных серверах.

2 голосов
/ 29 июня 2011

Он сообщает VS, что отображать в IntelliSense описания вещей в соответствующей dll

1 голос
/ 29 июня 2011

Они поддерживают файлы для внутренней разработки Visual Studio. Это помогает ускорить разработку, предоставляя встроенную помощь во время кодирования и ссылки по мере необходимости. Они помогают Visual Studio.

Вы можете удалить их после завершения этапа разработки. Они не понадобятся при развертывании !!!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...