|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
Если созданный объект Excel записать на диск, а потом считать Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
То цель достигнута, но через "так делать не надо". Но при попытке сериализовать Excel сразу, без сохранения, Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9.
разумеется получаю ошибку о том, что объект несереализуемый. И как же его пометить Serializable, если это не собственноручно созданный класс? Или есть какой-то другой способ получить byte[] из Excel, которого я не нагуглил? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 10:15 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
Бред сивой кобылы. >Если созданный объект Excel записать на диск, а потом считать Это не "объект эксель", а рабочая книга в формате excel 2007+ >То цель достигнута, но через "так делать не надо". Только так делать и надо. >Или есть какой-то другой способ получить byte[] из Excel Нет никакого способа "получить byte[] из Excel" потому что эта фраза не имеет смысла. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 10:37 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
AntonariyТолько так делать и надо. уверен? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 11:39 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
AntonariyБред сивой кобылы. >Если созданный объект Excel записать на диск, а потом считать Это не "объект эксель", а рабочая книга в формате excel 2007+ >То цель достигнута, но через "так делать не надо". Только так делать и надо. >Или есть какой-то другой способ получить byte[] из Excel Нет никакого способа "получить byte[] из Excel" потому что эта фраза не имеет смысла. Рабочая книга в данном случае является экземпляром класса Microsoft.Office.Interop.Excel.Workbook, то есть, объектом. А то, что Вы привыкли всё делать "как-нибудь, чтоб работало" - дело Ваше, но это не отменяет существования альтернатив. Так что попрошу обойтись без буквоедства, раз по сути вопроса Вам сказать нечего. Спасибо за понимание. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 12:15 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
НовыйЯРабочая книга в данном случае является экземпляром класса Microsoft.Office.Interop.Excel.Workbook, то есть, объектом. сериализация этого объекта - это и есть получение эксельного файла Если без рукоблудия - забыть про COM интероп и работать с office SDK http://msdn.microsoft.com/ru-ru/library/office/bb448854(v=office.15).aspx ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 12:33 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
Изопропил уверен?Уверен в том смысле, что делать это нужно экселевскими средствами. Конкретно под com я не подпишусь :) НовыйЯРабочая книга в данном случае является экземпляром класса Microsoft.Office.Interop.Excel.Workbook, то есть, объектом.Xslx-файл не является сериализованным объектом Microsoft.Office.Interop.Excel.Workbook в том строгом смысле, который определяется с помощью Serializable, как не являются ими xls, xslm и прочие форматы экселевских файлов. Хотя бы потому что xslx это zip-архив с целой кучей файлов. Другими словами, файл сделан не по общим правилам Serializable, а по внутренним правилам экселя. Ну а "получить byte[] из Excel" (даже не Workbook) вообще не имеет смысла ни с какой точки зрения, кроме дампа оперативной памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 12:59 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
НовыйЯРабочая книга в данном случае является экземпляром класса Microsoft.Office.Interop.Excel.Workbook, то есть, объектом. Microsoft.Office.Interop.Excel.Workbook не класс, а интерфейс, чувствуете разницу? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 13:14 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
AntonariyКонкретно под com я не подпишусь :) я уж испугался :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 13:18 |
|
Как сериализовать несериализуемое? (object Excel -> byte[])
|
|||
---|---|---|---|
#18+
pationНовыйЯРабочая книга в данном случае является экземпляром класса Microsoft.Office.Interop.Excel.Workbook, то есть, объектом. Microsoft.Office.Interop.Excel.Workbook не класс, а интерфейс, чувствуете разницу?Еще один буквоед! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.05.2014, 13:41 |
|
|
start [/forum/topic.php?fid=20&msg=38641979&tid=1402935]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 322ms |
total: | 467ms |
0 / 0 |