«c#» etiketlenmiş sorular

C #, .NET platformuna paralel olarak Microsoft tarafından oluşturulan çok parametreli, yönetilen, çöp toplanan nesne yönelimli bir programlama dilidir.


3
Ayrıştırma hatası durumunda ayrıntılı bilgi sağlayan bir TryParse yöntemini nasıl tasarlayabilirim?
Kullanıcı girişini ayrıştırırken genellikle istisnaları atmamak ve yakalamak değil, daha ziyade doğrulama yöntemlerini kullanmanız önerilir. .NET BCL'de bu, örneğin int.Parse(geçersiz veriler için bir istisna atar) ve int.TryParse( falsegeçersiz verilerde geri dönüşler ) arasındaki fark olacaktır. Kendim tasarlıyorum Foo.TryParse(string s, out Foo result) yöntemi ve dönüş değeri hakkında emin değilim. bool.NET'in …
9 c#  .net  api-design 

4
ortam bağlamı ve yapıcı enjeksiyonu
ISessionContext veritabanı, günlük için ILogManager ve başka bir hizmet ile iletişim için kullanılan IService gerektiren birçok çekirdek sınıf var. Tüm çekirdek sınıflar tarafından kullanılan bu sınıf için bağımlılık enjeksiyonu kullanmak istiyorum. İki olası uygulamam var. IAmbientContext'i üç sınıfın tümü ile kabul eden veya tüm sınıf için üç sınıfın enjekte ettiği …

2
Hangi veriler `` Talep '' olarak saklanmalıdır?
ASP.Net Core'da Claimsyetkilendirmenin çok somut olmayan bir yöntem olduğunu düşünüyorum. Bir şey ekleyebilir ClaimTypeve eşleyebiliriz ClaimValue; gruplar, ad, soyad, brithdate, canAccessThisURI, isEditor, vb. Ancak, bu yaklaşım (talep olarak saklanabilecek her şeyi saklamak), uygulama verilerimin% 50'sini içeren büyük bir talep tablosu oluşturacaktır. Merak ediyorum, iyi bir uygulama olarak, iddia olarak saklanması …


3
“Serbest fonksiyonlar” ı temiz bir şekilde işlemek için C # deseni, Yardımcı tarzı “yardımcı torba” statik sınıflarından kaçınmak
Son zamanlarda birlikte çalıştığım bazı büyük C # kod tabanları etrafında yüzen birkaç Yardımcı tarzı "yarar çanta" statik sınıfları inceliyordu, temelde aşağıdaki çok yoğun snippet gibi şeyler: // Helpers.cs public static class Helpers { public static void DoSomething() {} public static void DoSomethingElse() {} } İncelediğim belirli yöntemler çoğunlukla birbiriyle …

6
Birim testleri yalnızca 'işlevsel' yazılımı kapsamalı mı
Biz kullandığınız StructureMap yeni bir yazılım geliştirme projesinde. Ekip üyelerinden biri, temel olarak StructureMap konteyner yapılandırmasını test eden bir birim testi uyguladı . Bunu aşağıdakileri yaparak yapar; Uygulama ad alanımızdaki sınıflar için yapılandırılmış derleme örneği sayısını sayar. Sınıf düzeyinde beklenen örnekleri tanımlar Beklenen örneklerin toplam bulunan örneklerle eşleştiğini iddia eder. …

4
İş nesnesi sınıfı tasarımın bu “tamamen halka açık” zihniyetine nasıl karşı çıkılır?
İş nesnelerimiz üzerinde çok sayıda birim testi ve yeniden düzenleme yapıyoruz ve sınıf tasarımı konusunda diğer akranlardan çok farklı görüşlere sahibim . Ben hayranı değilim örnek bir sınıf: public class Foo { private string field1; private string field2; private string field3; private string field4; private string field5; public Foo() { …

2
`Vektör <float> .Equals` dönüşlü olmalı mı yoksa IEEE 754 anlambilimine uygun mu?
Eşitlik için kayan nokta değerleri karşılaştırılırken iki farklı yaklaşım vardır: NaNIEEE 754 şartnamesine uyan kendine eşit olmamalıdır . NaNEşdeğerlik ilişkisinin tanımlanması için gerekli olan refleksivitenin matematiksel özelliğini sağlayan kendisine eşit olmak C # ( floatve double) içindeki yerleşik IEEE kayan nokta türleri ve ==ve !=(ve ilişkisel operatörler gibi &lt;) için …

1
Komut nesnelerini doğru alıcıyla nasıl ilişkilendirebilirim?
Projemde Geri Al ve Yinele'yi uygulamak için Komut Deseni kullanmaya çalıştım public abstract class Command { protected Form Receiver { set; get; } protected HtmlElement Element { set; get; } abstract public void ReDo(); abstract public void UnDo(); public Command(Form receiver) { this.Receiver = receiver; } } class AddElementCmd : …


3
.NET kitaplığınızı COM sınırlamaları göz önünde bulundurularak yazmak veya .NET kitaplığınızı Interop'tan ayırmak daha iyi mi?
Bu ilginç makaleye rastladım: CodeProject'teki COM Birlikte Çalışabilirliğini Sevmeye Nasıl Geldim, ki beni düşündürdü ... Yazar, .NET kitaplıklarında COM-ities istemediklerini çünkü .NET kitaplıklarının güzelliğinden uzak durduklarını iddia ediyor. Bunun yerine, .NET kitaplıklarını COM'a gösteren ayrı bir Interop kitaplığı yazmayı tercih ederler. Bu Interop kütüphanesi, COM'un Parametreler, Aşırı Yüklü Yöntemler, Jenerikler, …

3
Veri türleri için arabirimler kullanmak bir anti-desen midir?
Kullanıcı, Ürün, Fatura ve Sipariş gibi, modelimde (EF kullanarak) çeşitli öğelerim olduğunu varsayalım. Uygulamamda varlıkların önceden belirlenmiş kümeye ait olduğu varlık nesneleri özetlerini yazdırabilen bir kullanıcı denetimi yazıyorum, bu durumda Kullanıcı ve Ürün özetlerinin özetlenebileceğini söylüyorum. Özetlerin hepsi sadece bir ID ve bir açıklama olacak, bu yüzden bunun için basit …

4
Yerleşik türün doğrulanmasını sağlamak için struct kullanma
Genellikle etki alanı nesneleri yerleşik bir türle temsil edilebilecek, ancak geçerli değerleri bu türle temsil edilebilecek değerlerin bir alt kümesi olan özelliklere sahiptir. Bu durumlarda, değer yerleşik tip kullanılarak saklanabilir, ancak değerlerin her zaman giriş noktasında doğrulandığından emin olmak gerekir, aksi takdirde geçersiz bir değerle çalışabiliriz. Bunu çözmenin bir yolu, …
9 c#  .net 

4
DAL ve BLL Katmanları arasında veri ve iş nesnelerini almanın ayrılması
Bu soruyu göndermeden önce biraz araştırma yaptım. Diğer sorular veya gönderilerin yanı sıra, bunlardan biri aşağıda verilmiştir. Nasıl belirleyeceğime dair net bir fikrim yoktu. Veri Erişim Katmanındaki İş Nesneleri Bir havuz var ve iş katmanları veri almak için havuzu çağırır. Örneğin, BLL ve DAL için aşağıdaki sınıflarım olduğunu varsayalım: class …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.