Я получаю ошибку преобразования типа компиляции с этим кодом ... dunno, если я просто устал, но я не могу понять, что мне нужно изменить в класс, чтобы исправить это. Все указатели было бы удивительным, благодаряОшибка преобразования типа компиляции C#
Ошибка: «CS0266 ошибка:. Не может неявно преобразовать тип
csharpfinal.Packaging<string>
вcsharpfinal.IGetValue<object>
Явное преобразование существует (вы пропали без вести слепок?)»
interface ISetValue<T>
{
void SetData(T data);
}
interface IGetValue<T>
{
T GetData();
}
class Packaging<T> : ISetValue<T>, IGetValue<T>
{
private T storedData;
void ISetValue<T>.SetData(T data)
{
this.storedData = data;
}
T IGetValue<T>.GetData()
{
return this.storedData;
}
}
class Program
{
static void Main(string[] args)
{
Packaging<string> stringPackage = new Packaging<string>();
ISetValue<string> setStringValue = stringPackage;
setStringValue.SetData("Sample string");
// the line below causes a compile-time error
IGetValue<object> getObjectValue = stringPackage;
Console.WriteLine("{0}", getObjectValue.GetData());
}
}
Вы пробовали 'IGetValue getObjectValue = stringPackage; ' –
Является ли мой код неправильным? – dotnetstep
пытался это сделать без изменения