«nullable-reference-types» 태그된 질문

C # 8의 nullable 참조 형식과 관련된 문제의 경우.

3
이것은 ?[]? C #의 구문?
나는 공부하는 동안 대표 인 추상 클래스가 실제로을 Delegate.cs, 나는 다음과 같은 방법이있는 이해가 안보고 반환 값 ?이 이미 reference ( class ) 유형 이지만 왜 값을 사용합니까? ?[]? 매개 변수에 대한 의미 설명해 주시겠습니까? public static Delegate? Combine(params Delegate?[]? delegates) { if (delegates == null || delegates.Length == 0) …

6
전체 프로젝트에 대해 C # 8.0의 Nullable 참조 형식 기능을 활성화하는 방법
C # 8 발표 비디오 에 따르면 전체 프로젝트에 대해 "nullable reference types"기능을 활성화 할 수 있습니다. 하지만 프로젝트에서 어떻게 활성화할까요? Visual Studio 2019 Preview 1의 프로젝트 속성 창에서 새로운 적절한 옵션을 찾지 못했습니다. .csprojC # 언어 버전이 8.0으로 변경된 경우 '레거시' 프로젝트에 대해 활성화 할 수 있습니까 ?



2
Entity Framework Core 모델에서 C # 8.0 Nullable Reference Types를 사용하는 방법은 무엇입니까?
.NET Core 3.0 프로젝트에서 C # 8.0 Nullable Reference Types를 활성화하고 있습니다. 이 프로젝트는 Entity Framework Core 3.0을 사용하여 데이터베이스에 액세스합니다. 다음은 Title이 null이 아니어야하는 데이터 모델입니다. public class Vehicle { public int Id { get; private set; } public string Title { get; private set; } // Entity Framework …


2
메소드가 필드에서 실제로 널 점검임을 C # 널 입력 가능 참조에 알릴 수 있습니까?
다음 코드를 고려하십시오. #nullable enable class Foo { public string? Name { get; set; } public bool HasName => Name != null; public void NameToUpperCase() { if (HasName) { Name = Name.ToUpper(); } } } Name = Name.ToUpper ()에서 Name이 가능한 null 참조라는 경고가 표시됩니다. HasName을 인라인하여이 경고를 치료할 수 …

1
C # 8의 Unknown Nullability는 무엇입니까?
C # 8.0에서는 널 입력 가능 참조 유형을 가질 수 있습니다. 문서 에는 네 가지 유형의 null 허용이 있다고 명시되어 있습니다. 처음 3 개는 명확하지만 "알 수 없음"의 요점을 이해하지 못합니다. 문서는 그것이 제네릭과 함께 사용된다고 말하지만 제네릭에서 제한되지 않은 T 유형의 변수에 대한 메서드를 호출하려고하면 유형이 nullable 인 것처럼 …

5
C # 8의 널 입력 불가능 참조 유형이 런타임에서 널이 될 수 있습니까?
nullable이 아닌 변수에 null이 없다는 보장은 실제로 없습니다. nullable이 아닌 하나의 속성이있는 클래스가 있다고 상상해보십시오. public class Foo { public Foo(string test) { Test = test; } public string Test {get;set;} } 이제는 null이 될 수없는 것처럼 보일 수 있습니다. 그러나이 클래스를 nullable 컨텍스트를 사용하지 않는 다른 라이브러리로 참조하면 아무것도 …

1
FirstOrDefault에서 노출되지 않는 널 입력 가능 참조 유형 정보
C # 8.0 의 새로운 nullable 참조 형식 기능 을 테스트하고 싶었습니다 . .NET Core 3.0을 대상으로 새 프로젝트를 시작하고 .csproj파일 에서 nullable 참조 유형을 활성화 하고 코딩을 시작했습니다. a를 가져 와서 해당 배열에서를 string[]반환 하는 간단한 목록을 만들었습니다 . 실제로 배열에 실제로 존재하는지 확실하지 않기 때문에 일치를 찾을 수 …

2
null 참조가 불가능할 때 왜 역 참조 null 참조 경고가 발생합니까?
HNQ 에서이 질문 을 읽은 후에 C # 8의 Nullable Reference Types에 대해 읽고 몇 가지 실험을했습니다. 나는 누군가가 "컴파일러 버그를 발견했다!"라고 말할 때 10에서 9 번, 또는 더 자주 알고 있습니다. 이것은 실제로 의도적으로 설계된 것이며 자체 오해입니다. 그리고 오늘만이 기능을 살펴보기 시작 했으므로 분명히 잘 이해하지 못합니다. 이 …

3
ORM과 함께 DTO 클래스를 사용할 때 C # 8의 널 입력 가능 참조 유형
아래와 같이 DTO (Data Transfer Object) 클래스가있는 프로젝트에서이 기능을 활성화했습니다. public class Connection { public string ServiceUrl { get; set; } public string? UserName { get; set; } public string? Password { get; set; } //... others } 하지만 오류가 발생합니다. CS8618: 널 입력 불가능 특성 'ServiceUrl'이 초기화되지 않았습니다. 속성을 …

2
C #은 'notnull'유형을 nullable로 만들 수 없습니다.
Rust Result또는 Haskell 과 비슷한 유형을 만들려고합니다.Either 지금까지 이것을 얻었습니다. public struct Result<TResult, TError> where TResult : notnull where TError : notnull { private readonly OneOf<TResult, TError> Value; public Result(TResult result) => Value = result; public Result(TError error) => Value = error; public static implicit operator Result<TResult, TError>(TResult result) => …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.