Существует ли стандарт (как phpdoc или docstring Python) для комментария кода C#?

Похоже, вы хотите перечислить любого профессора, который или преподавал INF1130 и INF1110 в 32003; или преподавал INF3180 и INF2110 в 12004. К сожалению, вы представили это как И (то есть они должны были преподавать все четыре курса - одну пару курсов И другой), а не ИЛИ (один набор курсов ИЛИ другой) [1111 ]

Как многословный способ расширить то, что, я думаю, вы хотите:

SELECT p.firstName, p.lastName
FROM Professor p
WHERE (
  EXISTS (
    SELECT *
    FROM GroupX g
    WHERE professorCode = p.professorCode
    AND sessionCode = 32003
    AND sigle = 'INF1130'
  )
  AND EXISTS (
    SELECT *
    FROM GroupX g
    WHERE professorCode = p.professorCode
    AND sessionCode = 32003
    AND sigle = 'INF1110'
  )
)
OR (
  EXISTS (
    SELECT *
    FROM GroupX g
    WHERE professorCode = p.professorCode
    AND sessionCode = 12004
    AND sigle = 'INF3180'
  )
  AND EXISTS (
    SELECT *
    FROM GroupX g
    WHERE professorCode = p.professorCode
    AND sessionCode = 12004
    AND sigle = 'INF2110'
  )
);

Четыре подзапроса не будут ужасно эффективными. Вместо этого вы можете сделать несколько соединений.

Если вы всегда будете искать два sigle значения для sessionCode, то вы можете изменить ответ Гордона, чтобы подсчитать, сколько соответствует каждому sigle, добавив его в предложение group-by:

[111 ]

Если бы у вас был профессор, который преподавал все четыре, то вы бы перечислили их дважды; если это может произойти, вы можете добавить свой DISTINCT обратно, хотя это немного не так. Вы также можете использовать подзапрос и IN, чтобы избежать этого:

SELECT p.firstName, p.lastName
FROM Professor p
WHERE ProfessorCode IN (
  SELECT professorCode
  FROM GroupX
  WHERE (sessionCode, sigle) IN ( (32003, 'INF1130'), (32003, 'INF1110'),
                                  (12004, 'INF3180'), (12004, 'INF2110')
                                )
  GROUP BY professorCode, sessionCode
  HAVING COUNT(*) = 2
)

(я изменил Group на GroupX, потому что это недопустимый идентификатор; потому что это ключевое слово. I Предположим, вы изменили свои настоящие имена - может быть, с другого языка?)

25
задан Mark Biek 29 August 2008 в 15:57
поделиться

6 ответов

Можно использовать комментарии стиля XML и использовать инструменты для вытаскивания тех комментариев в документацию API.

Вот пример стиля комментария:

/// <summary>
/// Authenticates a user based on a username and password.
/// </summary>
/// <param name="username">The username.</param>
/// <param name="password">The password.</param>
/// <returns>
/// True, if authentication is successful, otherwise False.
/// </returns>
/// <remarks>
/// For use with local systems
/// </remarks>
public override bool Authenticate(string username, string password)

Некоторые объекты для упрощения этого:

GhostDoc, которые дают единственное сочетание клавиш для автоматической генерации комментариев для класса или метода. Замок из песка , который генерирует документацию стиля MSDN из XML-комментариев.

32
ответ дан 28 November 2019 в 21:19
поделиться
/// <summary>
///
/// </summary>
/// <param name="strFilePath"></param>

http://msdn.microsoft.com/en-us/magazine/cc302121.aspx

4
ответ дан 28 November 2019 в 21:19
поделиться

Microsoft использует" Комментарии Документации XML ", который даст IDE intellisense описания и также позволит Вам автоматически генерировать документацию стиля MSDN с помощью инструмента, такого как Замок из песка, если Вы включите поколение вывода XML-файла.

Для включения поколения XML-файла для документации щелкните правой кнопкой по проекту в Visual Studio, нажмите "Properties" и перейдите к вкладке "Build". К нижней части можно определить местоположение для выходного файла XML-комментариев.

1
ответ дан 28 November 2019 в 21:19
поделиться

Предыдущие ответы указывают на синтаксис XML отлично. Я просто хотел добавить свою рекомендацию для свободный (и открытый исходный код) nDoc генератор справочной библиотеки , который анализирует все комментарии в проекте.

1
ответ дан 28 November 2019 в 21:19
поделиться

C# создал в команды документации Развлекайтесь!

1
ответ дан 28 November 2019 в 21:19
поделиться

Мне всегда говорили использовать комментарии блока, открытые с 2 или больше звездочками, действительно разграничивают комментарии для документации.

/**
Documentation goes here.
(flowerboxes optional) 
*/
0
ответ дан 28 November 2019 в 21:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: