«c#» 태그된 질문

C #은 Microsoft에서 .NET 플랫폼과 병렬로 생성 한 다중 패러다임, 관리, 가비지 수집 개체 지향 프로그래밍 언어입니다.

2
"계산 된"값을 속성 또는 메서드로 노출해야합니까?
웹 콘텐츠 관리 시스템의 콘텐츠 유형을 나타내는 C # 클래스가 있습니다. 웹 컨텐츠 편집기가 오브젝트 표시 방법에 대한 HTML 템플리트를 입력 할 수있는 필드가 있습니다. 기본적으로 객체 속성 값을 HTML 문자열로 대체하기 위해 핸들 바 구문을 사용합니다. <h1>{{Title}}</h1><p>{{Message}}</p> 클래스 디자인 관점에서 형식화 된 HTML 문자열 (대체 포함)을 속성 또는 메서드 …

2
Command 자체에서 메소드를 처리하는 대신 클래스 CommandHandler를 Handle ()로 분리하는 이유
다음 과 같이 S # arp 아키텍처를 사용하여 CQRS 패턴의 일부를 구현 했습니다. public class MyCommand { public CustomerId { get; set; } // some other fields } public class MyCommandHandler<MyCommand> : ICommandHandler<MyCommand, CommandResult> { Handle(MyCommand command) { // some code for saving Customer entity return CommandResult.Success; } } 왜 …

4
판독 루프를 종료하는 방법은 선호되는 방법입니까?
읽을 항목 수를 알 수없는 판독기를 반복해야하는 경우 끝까지 닿을 때까지 계속 읽으십시오. 이것은 종종 끝없는 루프가 필요한 곳입니다. 블록 안에 어딘가에 또는 문 true이 있어야 함을 나타내는 항상 있습니다 .breakreturn int offset = 0; while(true) { Record r = Read(offset); if(r == null) { break; } // do work …

2
C # 인터페이스로 Haskell 타입 클래스 구현
Haskell의 형식 클래스와 C #의 인터페이스를 비교하려고합니다. 가 있다고 가정합니다 Functor. 하스켈 : class Functor f where fmap :: (a -> b) -> f a -> f b 이 유형 클래스를 C #의 인터페이스로 구현하는 방법은 무엇입니까? 내가 시도한 것 : interface Functor<A, B> { F<B> fmap(Func<A, B> f, F<A> …
13 c#  haskell 

4
linq가 표면에 나타나는 것보다 더 효율적입니까?
이런 식으로 쓰면 : var things = mythings .Where(x => x.IsSomeValue) .Where(y => y.IsSomeOtherValue) 이것은 다음과 같습니다. var results1 = new List<Thing>(); foreach(var t in mythings) if(t.IsSomeValue) results1.Add(t); var results2 = new List<Thing>(); foreach(var t in results1) if(t.IsSomeOtherValue) results2.Add(t); 또는 다음과 같이 작동하는 표지 아래에 마술이 있습니까? var results = …
13 c#  linq 

1
왜 Resharper가 "as"를 "is"보다 선호합니까?
이와 같은 코드를 작성할 때 obj는 로컬 변수입니다. if (obj is IMyInterface) { var result = (IMyInterface)obj; // .... } Resharper는 다음과 같은 코드로 변경하도록 제안합니다. var result = obj as IMyInterface; if (result != null) { // ... } 우연한 null 참조 예외에 대한 기회를 제공하지 않기 때문에 전자를 …
13 c#  resharper 

2
C ++는 공통 공통 조상으로 다중 상속을 어떻게 처리합니까?
나는 C ++ 사람이 아니지만 이것에 대해 생각해야합니다. C ++에서는 다중 상속이 가능한데 왜 C #에서는 불가능합니까? (나는 다이아몬드 문제를 알고 있지만 여기서 내가 묻는 것은 아닙니다.) C ++는 여러 기본 클래스에서 상속 된 동일한 메소드 서명의 모호성을 어떻게 해결합니까? 왜 같은 디자인이 C #에 포함되지 않습니까?

2
인라인 코드 주석에 가장 적합한 방법은 무엇입니까?
우리는 20 년 된 레거시 코드베이스로 리팩토링을하고 있으며 코드의 주석 형식 (plsql, java)에 대해 동료와 토론하고 있습니다. 주석의 기본 형식은 없지만 대부분의 경우 주석에서 다음과 같은 작업을 수행합니다. // date (year, year-month, yyyy-mm-dd, dd/mm/yyyy), (author id, author name, author nickname) and comment 내가 원하는 미래 및 과거 의견에 대한 제안 …

4
인터페이스가 다른 인터페이스를 확장하고 메소드를 상속해야 함
이것은 일반적인 질문이지만 현재 겪고있는 문제와 관련이 있습니다. 현재 솔루션에 지정된 인터페이스가 있습니다. public interface IContextProvider { IDataContext { get; set; } IAreaContext { get; set; } } 이 인터페이스는 프로그램 전체에서 자주 사용되므로 필요한 개체에 쉽게 액세스 할 수 있습니다. 그러나 프로그램의 상당히 낮은 수준에서 IAreaContext 를 사용 하고 …
13 c#  design  interfaces 

6
컬렉션 요청에 항목이 없을 때 예상되는 동작
다음과 같은 것들이 있다고 가정 해 봅시다. List<Thing> theThings = fubar.Things.All(); 반환 할 것이 없다면 fubar.Things.All ()이 무엇을 반환 할 것입니까? 편집 : 의견 주셔서 감사합니다. 조금 기다렸다가 가장 많은 항목을 수락합니다. 나는 지금까지의 답변, 특히 빈 컬렉션을 제안하는 답변에 동의합니다. 공급 업체는 위 예제와 유사한 여러 호출을 API에 제공했습니다. …
13 java  c# 

3
오디오를 단위 테스트하려면 어떻게해야합니까?
나는 작은 프로젝트를 물려 받았으며 내가 추가하는 모든 새 코드에 대해 단위 테스트를 작성하여 확장하고 동시에 안정화하고 싶습니다. 첫 번째 클래스는 TypedAudioCreator오디오 파일을 생성하며 첫 번째 테스트와 코드 작성이 매우 쉬운 것으로 판명되었습니다. 그러나 글을 쓸 시간이되었을 때 TypedAudioPlayer, 어떻게 테스트 할 수 있는지 전혀 몰랐습니다. 소리 재생의 기본에 중점을 …
13 c#  tdd 

7
C # 경험이 C ++로 잘 번역됩니까? [닫은]
폐쇄되었습니다 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 학교에서 쓰는 프로그래밍 수업은 C ++이지만 지난 몇 년간 C #을하는 일을 끝냈습니다. C ++에서 1 년 또는 …
13 c#  c++  experience 

3
XML 문서 주석에 무엇이 포함되어야합니까?
특히 클래스 멤버에 대한 XML 주석과 관련하여 코드를 더 잘 설명하려고 노력하고 있지만 종종 바보 같은 느낌을줍니다. 이벤트 처리기의 경우 명명 규칙과 매개 변수가 표준이며 명확합니다. /// <summary> /// Handler for myCollection's CollectionChanged Event. /// </summary> /// <param name="sender">Event Sender</param> /// <param name="e">Event Arguments</param> private void myCollection_CollectionChanged(object sender, NotifyCollectionChangedEventArgs e) …
13 c#  coding-style 

2
NHibernate에서 리포지토리 패턴이 필요한 이유는 무엇입니까?
공식 NHibernate 기반 응용 프로그램을 읽고 있습니다. 튜토리얼이 훌륭하고 따르기 쉽지만 리포지토리 패턴이 사용되는 이유가 궁금합니다. 다양한에서 Add, Update, Remove의 메소드 ProductRepository구현 코드는 거의 동일합니다 - 그들은 모든 트랜잭션을 사용하고, 그 차이는 "고기"에 즉, 콜입니다 session.SaveINT Add, 방법 session.Delete에 remove방법. ( 페이지에 HTML 앵커가 없지만 페이지와 같은 관련 코드를 검색 …
13 c#  .net  nhibernate 

4
모델에 "FullName"또는 "FormattedPhoneNumber"와 같은 게터를 넣는 것이 "패턴 냄새"입니까?
ASP.NET MVC 앱을 만들고 있는데, 유용하고 편리한 게터처럼 보이는 것을 모델 / 엔터티 클래스에 넣는 습관을 들이고 있습니다. 예를 들면 다음과 같습니다. public class Member { public int Id { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public string PhoneNumber …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.