|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 Шо значит не озвучил cреду разработки - я об ней второй день говорю - .Net - C#. Как минимум - .Net Framework или .Net Core ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 12:49 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 Шо значит не озвучил cреду разработки - я об ней второй день говорю - .Net - C#. Строго говоря, .Net - C# -это не среда разработки . ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 12:51 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Shocker.Pro jenya7 Шо значит не озвучил cреду разработки - я об ней второй день говорю - .Net - C#. Как минимум - .Net Framework или .Net Core .NET Framework 4.6.1. а что есть существенная разница? в .Net Core мои фантазии реализуются? :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 12:55 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 .NET Framework 4.6.1. а что есть существенная разница? в .Net Core мои фантазии реализуются? :) Разница есть. Не всё то, что есть в .Net Framework, реализовано в .Net Core или .Net 5. Но если вы не будете использовать такие вещи как, к примеру, WCF или WF, то для вас это может быть и не критичным. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 12:58 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 .NET Framework 4.6.1. а что есть существенная разница? в .Net Core мои фантазии реализуются? :) Если вообще нужна служба. Если достаточно будет обычной WF-проги (раз уж нужно взаимодействие с пользователем), которая работает только когда запущена, ну можно и без службы обойтись. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 13:04 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 а как это можно хранить в БД? объект Почитайте про сериализацию/десериализацию объектов. Лично я предпочитаю сериализовывать/десериализовывать в формат JSON. Этот формат с некоторых пор, помимо двоичного и XML доступен к использованию "из коробки", причём пользоваться коробочной версией значительно удобней, чем старым, добрым NewtonSoft. К тому же JSON отлично, без дополнительных плясок с бубном, понимают и др. языки, такие как JavaScript/TypeScript и Java (на тот случай, если вам потребуется передать результат на сторону). ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 13:16 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
тут вопрос только в том, сможет ли он десериализовать состояние класса, который завязан на состояние внешнего устройства. Так все равно может понадобиться некий централизованный сервис, который их удерживает в памяти. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 13:25 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:06 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Просмотрел топик, а что про COM даже ещё никто не сказал? :) Сложно-сложно. Старая школа, создавай COM, регистрируй и общайся через него разными процессами ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:08 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Roman Mejtes https://docs.microsoft.com/ru-ru/dotnet/standard/io/memory-mapped-files выглядит круто. попробую. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:12 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 выглядит круто. попробую. Мне кажется, что это дорога в Ад. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:13 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Compositum jenya7 выглядит круто. попробую. Мне кажется, что это дорога в Ад. :) начнем с того что методы Write, Read не предоставляют возможности записи объекта. а как сериализовать IADevice REL1; понятия не имею. в принипе я могу открыть обычный файл и писать-читать. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:27 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 а как сериализовать IADevice REL1; Покажите свою реализацию IADevice, а так же ваш код сериализации. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:43 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 как сериализовать IADevice REL1; понятия не имею Никак скорее всего. Внутри них хэндлы объектов ОС, открытых COM-портов или типа того, их нельзя сериализовать. Они действительны только внутри конкретного процесса. Есть способ передать хэндл другому процессу DuplicateHandle() , но тут тебе надо в этот класс залезть, чтобы до хэндла добраться. Поэтому не будет работать как ты хочешь. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:49 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Compositum jenya7 а как сериализовать IADevice REL1; Покажите свою реализацию IADevice, а так же ваш код сериализации. Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 14:52 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7, Вы понимаете, что такое реализация интерфейса ? То, что вы сейчас скопировали из своего более раннего сообщения - это вообще не то. Если вы хотите сериализовывать экземпляр класса, реализующего интерфейс IADevice, то это должен быть максимально простой класс (DTO-класс), содержащий только данные. Обычно под это дело создают классы отдельно, предназначенные именно для сериализации и десериатилазции. В них, посредством специальных атрибутов, указывают, какие поля сериализовывать, а какие нет. Там же указывают, какие поля обязательны к заполнению, а какие нет. Эти классы, как правило, не содержат логики, т.к. они не для этого предназначены. Если у вас реализация обозначенного интерфейса содержит в себе не просто свойства, но и дополнительные скрытые поля, которые нужно правильно инициализировать тем или иным способом, а так же содержит различные методы, то такой класс, скорее всего, создавался без прицела на возможность его сериализации. Тогда вам нужно написать свой простой класс, сериализующий данные. Как вариант источника информации: тема сериализации/десериализации хорошо разжёвана в главе 17 (Сериализация) книги "C# 7.0. Справочник. Полное описание языка" за авторством Албахари Бен , Албахари Джозеф. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:02 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Compositum jenya7, Вы понимаете, что такое реализация интерфейса ? То, что вы сейчас скопировали из своего более раннего сообщения - это вообще не то. Если вы хотите сериализовывать экземпляр класса, реализующего интерфейс IADevice, то это должен быть максимально простой класс (DTO-класс), содержащий только данные. Обычно под это дело создают классы отдельно, предназначенные именно для сериализации и десериатилазции. В них, посредством специальных атрибутов, указывают, какие поля сериализовывать, а какие нет. Там же указывают, какие поля обязательны к заполнению, а какие нет. Эти классы, как правило, не содержат логики, т.к. они не для этого предназначены. я могу оформить IADevice в отдельный класс но он все равно будет содержать методы и логику иначе как я потом буду управлять картой. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:08 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 я могу оформить IADevice в отдельный класс но он все равно будет содержать методы и логику иначе как я потом буду управлять картой. Так вам же не обязательно сериализовывать именно класс, реализующий этот интерфейс. Вы можете специально для возможности сериализации/десериализации создать отдельный простой класс, содержащий все нужные вам данные, подлежащие передачи на сторону. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:12 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Compositum jenya7 я могу оформить IADevice в отдельный класс но он все равно будет содержать методы и логику иначе как я потом буду управлять картой. Так вам же не обязательно сериализовывать именно класс, реализующий этот интерфейс. Вы можете специально для возможности сериализации/десериализации создать отдельный простой класс, содержащий все нужные вам данные, подлежащие передачи на сторону. он должен быть статическим? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:18 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 он должен быть статическим? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:19 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 а как это можно хранить в БД? jenya7 это девайсы подключенные по USB. Очевидно же, что просто подключить девайс к серверу БД. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:23 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
Compositum Этот формат с некоторых пор, помимо двоичного и XML доступен к использованию "из коробки" Бинарную сериализацию из .NET Core выпилили. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:26 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 он должен быть статическим? Нет конечно. Невозможно создавать экземпляры статических классов. Мне кажется, что у вас по части ООП и .NET некоторая каша в голове. Возможно имеет смысл сначала почитать основы и попрактиковаться в создании простеньких консольных приложений аля "Hello World", прежде чем писать боевое приложение. В противном случае вы рискуете "утонуть" в своём же коде. ИМХО. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:26 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
fkthat Бинарную сериализацию из .NET Core выпилили. Не знал. :) Да и не пользовался ею давно в реальных приложениях (только в тестовых консольках, когда экспериментировал с тем, о чём читал в книжках). Даже XML уже давно перестал использовать в пользу JSON. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 15:29 |
|
Общий класс для нескольких проектов
|
|||
---|---|---|---|
#18+
jenya7 я могу оформить IADevice в отдельный класс но он все равно будет содержать методы и логику иначе как я потом буду управлять картой. Как ты к карте обращаешься? Хэндлы (HANDLE) объектов виндавса есть? Если есть, то с сериализацией будет засада 22291172 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.03.2021, 18:55 |
|
|
start [/forum/topic.php?fid=20&startmsg=40051563&tid=1398348]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
11ms |
get forum data: |
4ms |
get page messages: |
97ms |
get tp. blocked users: |
1ms |
others: | 271ms |
total: | 447ms |
0 / 0 |