Как назначить MemoryStream пользовательскому классу, который наследуется от MemoryStreamC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как назначить MemoryStream пользовательскому классу, который наследуется от MemoryStream

Сообщение Anonymous »

У меня есть класс MemoryStream2, который наследуется от MemoryStream, с той лишь разницей, что он вводит новую переменную — идентификатор ссылки. Теперь у меня ситуация, когда определенная функция возвращает MemoryStream, и мне нужно преобразовать/присвоить его MemoryStream2.

Код: Выделить всё

public class MemoryStream2 : System.IO.MemoryStream
{
public string ReferenceId = "";
public MemoryStream2() : base() { }
public MemoryStream2(byte[] buffer) : base(buffer) { }
public MemoryStream2(System.IO.MemoryStream ms)
{

this.ReferenceId = DateTime.Now.ToString();
this = ms;
}
}
Однако (System.IO.MemoryStream)this = ms; является ошибкой:

Невозможно назначить значение "this", поскольку оно доступно только для чтения

Код: Выделить всё

(System.IO.MemoryStream)this = ms;
также неверен:

Левая часть присваивания должна быть переменной

И как мне это сделать? Как назначить стандартный MemoryStream пользовательскому, желательно без перезагрузки/копирования данных из одного потока в другой?
Спасибо
РЕДАКТИРОВАТЬ: Не похоже, что моя проблема имеет быстрое решение. На данный момент композиция выглядит лучшим решением, хотя для этого требуется некоторый рефакторинг кода.

Подробнее здесь: https://stackoverflow.com/questions/791 ... morystream
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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