Как показано в документации к chart.js , здесь есть ссылка на документацию по chart.js , вы должны предоставить набор данных и метку в формате массива.
Попробуйте использовать передачу ienumerable для передачи модели для просмотра, что повлияет на преобразование в массив. Вашему классу должно понравиться это
public class ReportViewModel {
public innumerable cData { get; set; }
public innumerable
И ваш класс для данных и метки должен быть определен в пространстве имен модели Модель данных:
Public class data{
Public int value{get;set;}
}
Модель метки
Public class label{
Public string name{get;set;}
}
И с учетом этого вы должны импортировать модель, которую необходимо передать из контроллера, и вы можете напрямую использовать ее, а используя механизм бритвы, вы можете преобразовать ее также в массив во время выполнения с помощью функции toarray
Обратный порядок байтов (BE) / Прямой порядок байтов (LE) является двумя способами организовать многобайтовые слова. Например, чтобы использование двух байтов представило символ в UTF-16, существует два способа представить символ 0x1234
как строка байтов (0x00-0xFF):
Byte Index: 0 1
---------------------
Big-Endian: 12 34
Little-Endian: 34 12
Чтобы решить, использует ли текст UTF-16BE или UTF-16LE, спецификация рекомендует предварительно ожидать Порядок байтов Mark (BOM) к строке, представляя символ U+FEFF. Так, если первые два байта закодированного текстового файла UTF-16 FE
, FF
, кодирование является UTF-16BE. Для FF
, FE
, это - UTF-16LE.
Визуальный пример: слово "Example" в различной кодировке (UTF-16 с BOM):
Byte Index: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
------------------------------------------------------------
ASCII: 45 78 61 6d 70 6c 65
UTF-16BE: FE FF 00 45 00 78 00 61 00 6d 00 70 00 6c 00 65
UTF-16LE: FF FE 45 00 78 00 61 00 6d 00 70 00 6c 00 65 00
Для получения дополнительной информации прочитайте страницу Wikipedia Порядка байтов и/или UTF-16.
UTF-16 кодирует Unicode в 16-разрядные значения. Большинство современных файловых систем воздействует на 8-разрядные байты. Так, сохранить UTF-16 закодировало файл к диску, например, необходимо решить, какая часть 16-разрядного значения входит в первый байт, и который входит во второй байт.
Википедия имеет более полное объяснение.
Порядок байтов байта (большой или мало) должен быть указан для того, чтобы Unicode/UTF-16 закодировать, потому что для кодов символов, которые используют больше, чем единственный байт, существует выбор ли к чтению-записи старший значащий байт сначала или в последний раз. Unicode/UTF-16, так как они - кодировка переменной длины (т.е. каждый символ может быть представлен одним, или несколько байтов) требуют, чтобы это было указано. (Обратите внимание однако, что "слова" UTF-8 являются всегда 8-bits/one байтом в длине [хотя символы могут быть несколькими точками], поэтому нет никакой проблемы с порядком байтов.), Если кодер потока байтов, представляющих текст Unicode и декодер, не согласован, какая конвенция используется, неправильный код символа может быть интерпретирован. Поэтому или конвенция порядка байтов известна заранее или чаще всего метка порядка байтов обычно указывается в начале любого текстового файла Unicode / поток, чтобы указать, что whethere порядок с прямым порядком байтов или с обратным порядком байтов используется.
Ответ Фердинанда (и другие) правильный, но неполный.
Big Endian (BE) / Little Endian (LE) не имеют ничего общего с UTF-16 или UTF-32. Они существовали задолго до Unicode и влияют на то, как байты чисел хранятся в памяти компьютера. Они зависят от процессора.
Если у вас есть число со значением 0x12345678
, то в памяти оно будет представлено как 12 34 56 78
(BE) или 78 56 34 12
(LE).
UTF-16 и UTF-32 представлены в 2, соответственно, 4 байтах, поэтому порядок байтов соответствует порядку, который следует за любым числом на этой платформе.
little-endian: adj.
Описывает компьютерную архитектуру, в которой, в пределах данного 16- или 32-битного слова, байты по младшим адресам имеют меньшее значение (слово хранится "младшим концом вперед"). Компьютеры семейств PDP-11 и VAX, микропроцессоры Intel и множество коммуникационного и сетевого оборудования являются little-endian. Этот термин иногда используется для описания упорядочивания единиц, отличных от байтов; чаще всего это биты внутри байта.
big-endian: adj.
[common; из "Путешествий Гулливера" Свифта через знаменитую статью "О священных войнах и призыве к миру" Дэнни Коэна, USC/ISI IEN 137, от 1 апреля 1980 г.]
Описывает компьютерную архитектуру, в которой в данном многобайтовом числовом представлении старший байт имеет младший адрес (слово хранится "big-end-first"). Большинство процессоров, включая семейство IBM 370, PDP-10, семейства микропроцессоров Motorola и большинство различных RISC-процессоров, работают по схеме big-endian. Big-endian порядок байтов также иногда называют сетевым порядком.
---из файла жаргона: http://catb.org/~esr/jargon/html/index.html