Как иметь нулевой интерфейс в C# 13 (Dotnet 9) CS8766 [закрыто]C#

Место общения программистов C#
Ответить
Anonymous
 Как иметь нулевой интерфейс в C# 13 (Dotnet 9) CS8766 [закрыто]

Сообщение Anonymous »

Я использую интерфейс, реализованный несколькими типами, SelectedProject может быть одним из этих типов, но тогда у меня есть CS8766. Я понимаю, что интерфейс не может быть нулевым. Как реализовать то, что я хочу правильно, без общей обертки, так как я использую C# 13 (Dotnet 9)?public class MainViewModel: IMainViewModel
{
private IProjectViewModel? _selectedProject;

public IProjectViewModel? SelectedProject
{
get => _selectedProject;
// CS8766 - Nullability of reference types in return type of doesn't match
// implicitly implemented member (possibly because of nullability
// attributes).
}
< /code>
Проекты: < /p>
public class ProjectType1: IProjectViewModel {}

public class ProjectType2: IProjectViewModel {}
< /code>
Интерфейс imainviewmodel: < /p>
public interface IMainViewModel: INotifyPropertyChanged
{
public IProjectViewModel SelectedProject { get; }


Подробнее здесь: https://stackoverflow.com/questions/797 ... t-9-cs8766
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»