Как определить строковое представление объекта моего класса в PowerShell?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как определить строковое представление объекта моего класса в PowerShell?

Сообщение Anonymous »

Я пытаюсь создать несколько командлетов PowerShell на C# и создал класс DataChunk для хранения двоичных данных. Он просто содержит массив byte[]. Целью было прочитать байты из файла в DataChunk, чтобы показать, как мне это нужно. Итак, я написал метод ToString(). Но похоже, что PowerShell его не использует. Почему?

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

PS> $data = Read-BinaryData test.bin
PS> $data.GetType()

IsPublic IsSerial Name                                     BaseType
-------- -------- ----                                     --------
True     False    DataChunk                                System.Object
Вот что мне нужно:

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

PS> $data.ToString()
07 65 20 AE F6 8D 4F 00 97 A8 33 C9 81 EB 80 AE 92 87 7D 08
Вот как это работает сейчас:

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

PS> $data

Count
-----
20
Класс простой:

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

public class DataChunk
{
byte[] data;
public int Count => data.Length;
public override string ToString() { ... }
}
Как сделать так, чтобы мой собственный класс отображался в PowerShell так, как мне нужно?

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

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

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

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

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

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

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