
Instal melalui baris perintah:
Install-Package SharpSourceAtau tambahkan referensi sendiri:
< ItemGroup >
< PackageReference Include = " SharpSource " Version = " 1.26.0 " PrivateAssets = " All " />
</ ItemGroup >Jika Anda ingin menginstalnya sebagai ekstensi, unduh dari pasar.
Repo ini menampung kumpulan analisis yang bertujuan untuk membuat beberapa fitur bahasa dan jenis kerangka kerja lebih mudah dikerjakan. Ini melakukan ini dengan menyoroti ketika Anda mungkin menggunakan sesuatu yang salah dengan cara yang akan menghasilkan kinerja suboptimal, pengecualian runtime atau perilaku umum yang tidak diinginkan.
Dengan kata lain, repo ini hanya berisi analisis untuk pola yang memiliki potensi konkret untuk berubah menjadi tiket cacat . Ini tidak dimaksudkan untuk membantu tugas -tugas rumah tangga umum seperti memformat kode Anda atau memberikan pembantu produktivitas.
Tertarik berkontribusi? Lihatlah pedomannya!
Penjelasan terperinci dari setiap penganalisa dapat ditemukan dalam dokumentasi: https://github.com/vannevelj/sharpsource/tree/master/docs
| Kode | Nama |
|---|---|
| SS001 | AsyncmethodwithvoidReturnType |
| SS002 | Datetimenow |
| SS003 | DivideIntegerbyInteger |
| SS004 | ElementaryMethodSoftypeIncollectionNotoverridden |
| SS005 | EqualsAndGetHashCodenoMimplementedTogether |
| SS006 | Lempar |
| SS007 | FlagsenumValuesarenotPowerSoftwo |
| SS008 | GetHashCodereferstomutableMember |
| SS009 | Loopedrandomystantiation |
| SS010 | Newguid |
| SS011 | OnpropertyChangedwithoutnameofoperator |
| SS012 | RecursiveOperatorsover |
| SS013 | RethrowExceptionwithoutlosingStackTrace |
| SS014 | StringDotFormatWithDifferentamountofarguments |
| SS015 | StringplaceHoldersinWrongorder |
| SS017 | StructWithOutElementyMethodsoverridden |
| SS018 | Switchdoesnothandleallenumoptions |
| SS019 | SwitchismissingDefaultLabel |
| SS020 | TestMethodwithoutPublicModifier |
| SS021 | TestMethodWithOuttestAttribute |
| SS022 | ExceptionThrownFromImplicitoperator |
| SS023 | ExceptionThrownFrompropertyGetter |
| SS024 | ExceptionThrownFromStaticConstructor |
| SS025 | ExceptionThrownFromFinallyBlock |
| SS026 | ExceptionThrownFromequalityoperator |
| SS027 | ExceptionThrownFromDispose |
| SS028 | ExceptionThrownFromFinalizer |
| SS029 | ExceptionThrownFromGetHashCode |
| SS030 | ExceptionThrownFromequals |
| SS032 | Threadsleepinasyncmethod |
| SS033 | AsyncoverloadSavailable |
| SS034 | Mengakseskresultwithoutawait |
| SS035 | Synchronoustaskwait |
| SS036 | Nilai Eksplisit |
| SS037 | HttpClientInstantiatedDirectly |
| SS038 | HttpcontextstoredInfield |
| SS039 | EnumwithoutDefaultValue |
| SS040 | Tak terpakai yang tidak dapat digunakan |
| SS041 | Tidak perlu diusir |
| SS042 | InstanceFieldwithThreadStatic |
| SS043 | MultipleFrombodyparameters |
| SS044 | AtributeMustSpecifyAttributeUsage |
| SS045 | StaticinitializerAccessedBeforeInitialisasi |
| SS046 | UnboundedStackalloc |
| SS047 | LINQTRAVERSALBEFOREFILTER |
| SS048 | LockingondiscourageBject |
| SS049 | Perbandingan TringWithOutStringComparison |
| SS050 | ParameterassignedInconstructor |
| SS051 | LockingonMutableReference |
| SS052 | ThreadStaticWithInitializer |
| SS053 | PointlessCollectionToString |
| SS054 | NewTonsoftmixedwithsystemTextJson |
| SS055 | MultipleOrderbyCalls |
| SS056 | Formreadsynchron |
| SS057 | CollectionSmanipulatedDuringTraversal |
| SS058 | StringConcatenateDinLoop |
| SS059 | Disposeasyncdisposable |
| SS060 | ConcurrentDictionaryemptyCheck |
Apakah aturan tertentu tidak sesuai dengan keinginan Anda? Ada banyak cara untuk menyesuaikan keparahan mereka dan bahkan menonaktifkannya sama sekali. Untuk ikhtisar beberapa opsi, lihat dokumen ini.