Yanıtlar:
5 seçenek:
#pragma warning disable 1591
Uyarıyı yalnızca bazı kod parçaları için (ve #pragma warning restore 1591
daha sonra) devre dışı bırakmak için kullanınHerkes tarafından görülebilir türlere ve elbette üyelere XML yorumları ekleyin :)
///<Summary>
/// Gets the answer
///</Summary>
public int MyMethod()
{
return 42;
}
<summary>
Tüm üyeler için bu tür yorumlara ihtiyacınız vardır - bunlar da intellisense açılır menüsünde görünür.
Sebebi sen (proje ayarlarında) çıkış belgeleri xml dosyasına projenizi belirtmiş olduğunuz için bu uyarıyı almak olduğunu. Bu, sınıf kütüphaneleri (.dll montajları) için kullanışlıdır.
Kendinize GhostDoc Visual Studio AddIn'in bir kopyasını almanızı öneririm . Dokümantasyonu çok daha kolay hale getirir .
GhostDoc
- şimdiye kadar gördüğüm en aptal AddOn. Belgeler üretir. Şimdi düşünmek için bir saniye ara verin. Kodunuzun daha anlaşılır olmasını istersiniz, böylece yalnızca yöntem adı ve bağımsız değişken türlerine dayalı olarak belgeler üreten bir araç kullanırsınız. Sizin için bir anlam ifade ediyor mu? Kullanıcı argümanların adını ve türlerini görebilir, yorum ekleyebilir DateTime date
- Tarih gerçekten yardımcı olmuyor.
XML yorumları için Uyarıları Gizle
(işim değil, ama yararlı buldum, bu yüzden makaleyi ve bağlantıyı ekledim)
http://bernhardelbl.wordpress.com/2009/02/23/suppress-warnings-for-xml-comments/
Burada size bir Visual Studio derlemesinden sonra XML yorumları için uyarıları nasıl bastırabileceğinizi göstereceğim.
Arka fon
Visual Studio proje ayarlarında "XML belge dosyası" işaretini işaretlediyseniz, tüm XML yorumlarını içeren bir XML dosyası oluşturulur. Ayrıca, eksik veya yanlış XML yorumları nedeniyle tasarımcı tarafından oluşturulan dosyalarda da çok fazla uyarı alacaksınız. Bazen uyarılar kodumuzu geliştirmemize ve stabilize etmemize yardımcı olurken, yüzlerce XML yorum uyarısı almak sadece bir acıdır. Uyarılar
Herkese açık olarak görünen tür veya üye için XML yorumu eksik… XML açıklamasında…… için bir param etiketi var, ancak bu adda bir parametre yok Parametre '…' için XML yorumunda '…' için eşleşen param etiketi yok (ancak diğer parametreler)
Visual Studio'da her uyarıyı bastırabilirsiniz.
Visual Studio projesini / Özellikler / Derleme Sekmesini sağ tıklatın
"Uyarıları bastır" a aşağıdaki uyarı numaralarını girin: 1591,1572,1571,1573,1587,1570
Herhangi bir kod değişikliğine veya pragma bloğuna ihtiyaç duymadan bu mesajları bastırmanın başka bir yolu vardır. Visual Studio'yu kullanma - Proje özellikleri> Oluştur> Hatalar ve Uyarılar> Uyarıları Gizle - uyarı kodlarının listesine 1591 ekleyin.
#pragma warning disable
her yere dağıtmamı engelliyor , bu sadece sinir bozucu.
Bir XML yorumu ekleyin. ;-)
/// <summary>
/// Describe your member here.
/// </summary>
public string Something
{
get;
set;
}
Bu ilk bakışta bir şaka gibi görünebilir, ancak aslında yararlı olabilir . Benim için, özel yöntemler için bile hangi yöntemlerin ne yaptığını düşünmek yararlı oldu (gerçekten önemsiz olmadıkça, elbette).
Bunun nedeni, Proje Özelliklerinizde bir XML dokümantasyon dosyasının belirtilmiş olması ve Yöntem / Sınıfınızın herkese açık olması ve doküman eksikliğinin olmasıdır.
Şunlardan birini yapabilirsiniz:
Projenize sağ tıklayın -> Özellikler -> 'Oluştur' sekmesi -> XML Dokümantasyon Dosyasının işaretini kaldırın.
XML belgelerinin özeti şu şekildedir:
/// <summary>
/// Description of the class/method/variable
/// </summary>
..declaration goes here..
Burada listelenen cevaplara bir şeyler eklemek istedim:
Isak'ın işaret ettiği gibi, XML belgeleri Visual Studio içindeki herhangi bir tüketiciye akıllıca sağladığı için Sınıf Kütüphaneleri için kullanışlıdır. Bu nedenle, kolay ve doğru bir çözüm, kendi projesi dışında uygulanmayacak olan herhangi bir üst düzey proje (UI, vb.) İçin belgeleri basitçe kapatmaktır.
Ayrıca, uyarının yalnızca herkese açık üyelerde ifade edildiğini belirtmek istedim . Bu nedenle, sınıf kitaplığınızı yalnızca ihtiyaç duydukları şeyleri ortaya çıkaracak şekilde ayarlarsanız, belgeleri private
ve internal
üyeleri olmadan alabilirsiniz .
Bu gerçekten eski bir iş parçacığı olduğunu biliyorum, ama bu bilgi ekledi düşündüm bu yüzden google ilk yanıt:
Bu davranış sadece uyarı düzeyi "Proje Özellikleri" - 4 "Build" altında 4 olarak ayarlandığında oluşur . Bu kadar fazla bilgiye gerçekten ihtiyacınız olmadığı sürece 3'e ayarlayabilirsiniz ve bu uyarılardan kurtulabilirsiniz. Elbette, uyarı düzeyini değiştirmek yalnızca yorumlardan daha fazlasını etkiler, bu yüzden neyi kaçırdığınızdan emin değilseniz lütfen belgelere bakın:
https://msdn.microsoft.com/en-us/library/thxezb7y.aspx
Çözümünüzde, XML Belgesi dosyası oluşturma seçeneğini işaretlediğinizde, genel üyelerinizi XMLDoc'a sahip olup olmadıklarını kontrol etmeye başlar, yoksa her öğe için bir uyarı alırsınız. Gerçekten DLL'nizi serbest bırakmak istemiyorsanız ve aynı zamanda belgelere ihtiyacınız yoksa, çözümünüze gidin, bölüm oluşturun ve kapatın, başka bir şeye ihtiyacınız varsa, onları doldurun ve önemsiz varsa özellikleri ve alanları, sadece derleyici öncesi talimat ile onları aşmak
#pragma warning disable 1591
da uyarıyı geri yükleyebilirsiniz:
#pragma warning restore 1591
pragma kullanımı: derleyici uyarı aldığınız yerden önceki herhangi bir yerde ... (dosya için, üstbilgiye koyun ve tekrar etkinleştirmeniz gerekmez, bir sınıfın etrafında tek sınıf sarması için veya yöntem sarması için bir yöntem veya ... etrafına sarmanıza gerek yok, onu çağırabilir ve rasgele geri yükleyebilirsiniz (dosyanın başlangıcında başlayın ve bir yöntemin içinde bitirin)), şu kodu yazın:
#pragma warning disable 1591
ve geri yüklemeniz gerekirse, şunu kullanın:
#pragma warning restore 1591
İşte bir örnek:
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;
using RealEstate.Entity.Models.Base;
namespace RealEstate.Models.Base
{
public class CityVM
{
#pragma warning disable 1591
[Required]
public string Id { get; set; }
[Required]
public string Name { get; set; }
public List<LanguageBasedName> LanguageBasedNames { get; set; }
[Required]
public string CountryId { get; set; }
#pragma warning restore 1591
/// <summary>
/// Some countries do not have neither a State, nor a Province
/// </summary>
public string StateOrProvinceId { get; set; }
}
}
Pragma yönergesinin satır başında başladığını unutmayın
Uyarı seviyesinin 2 olarak ayarlanması bu mesajları bastırır. En iyi çözüm olup olmadığını bilmiyorum çünkü yararlı uyarıları da bastırıyor.
Jon Skeet'in yanıtı, VisualStudio ile birlikte çalışırken çok işe yarar. Ancak, sln komut satırıyla (benim durumumda Ant aracılığıyla) oluşturuyorsanız, msbuild'in sln supresyon isteklerini yok saydığını görebilirsiniz.
Bunu msbuild komut satırına eklemek sorunu benim için çözdü:
/p:NoWarn=1591
Dosya > Düzenle > Projeyi Görüntüle (tıklayın)
Açılır yayın alt kısmı ( Açık / Mevcut çalışma > Özellikler'e tıklayın ), "Çıktı" altında "Derleme" de proje özellikleri sayfasını açtı. XML Belgeleri onay kutusunun "işaretini kaldırın" .
Yeniden oluştur ve uyarı yok.
Uyarının görüntülendiği üye için /// Yorum eklemeniz gerekir.
aşağıdaki koda bakınız
public EventLogger()
{
LogFile = string.Format("{0}{1}", LogFilePath, FileName);
}
Herkese görünür tür veya üye için '.EventLogger ()' uyarısı eksik XML yorumu görüntüler
Üye için yorum ekledim ve uyarı gitti.
///<Summary>
/// To write a log <Anycomment as per your code>
///</Summary>
public EventLogger()
{
LogFile = string.Format("{0}{1}", LogFilePath, FileName);
}