.NET Core и сборки .NET FW
От: okon  
Дата: 18.10.19 05:06
Оценка:
Есть следующие проекты ( упрощенно ) :
App ( Core 2.0 )
Interfaces ( Core 2.0 )
Windows.Implementation ( FW 4.7.2 )
Linux.Implementation ( Core 2.0 )
Mac.Implementation ( Core 2.0 )
...

Windows.Implementation подгружается через Assembly.LoadFrom , в Modules она загружена, но зависимые сборки не загружаются.
В документации написано что нельзя использовать .NET FW в .NET Core.

В Windows.Implemenation реализуются специфичные методы для платформы Windows, которые есть в FW 4.7.2 но отсуствую в Core 2.0.

Linux/Mac реализуются через системные функции и ImportDLL

В Windows.Implementation хотелось бы облегчить работу и использовать готовые функции фреймворка, есть ли решения ?
”Жить стало лучше... но противнее. Люди которые ставят точку после слова лучше становятся сторонниками Путина, наши же сторонники делают акцент на слове противнее ( ложь, воровство, лицемерие, вражда )." (с) Борис Немцов
Re: .NET Core и сборки .NET FW
От: hi_octane Беларусь  
Дата: 18.10.19 06:50
Оценка: 4 (1)
O>Есть следующие проекты ( упрощенно ) :
O> App ( Core 2.0 )
O> Interfaces ( Core 2.0 )
O> Windows.Implementation ( FW 4.7.2 )
O> Linux.Implementation ( Core 2.0 )
O> Mac.Implementation ( Core 2.0 )
O> …

Вариант 1: Перевести App и Interfaces на .NET Standard, тогда его можно будет использовать и из FW и из Mac/Linux
Вариант 2: Так как в Core 3 сделали и WinForms и WPF, имеет смысл посмотреть есть ли нужные функции в .NET Core 3, или можно их реализовать малой кровью (например выдергав рефлектором), и переехать всем проектом на Core 3
Re: .NET Core и сборки .NET FW
От: Valeriy_Gourov Украина https://valeriygourovresume.azurewebsites.net
Дата: 18.10.19 07:50
Оценка: 4 (1)
Здравствуйте, okon, Вы писали:

O>Есть следующие проекты ( упрощенно ) :

O> Windows.Implementation ( FW 4.7.2 )

O>В Windows.Implementation хотелось бы облегчить работу и использовать готовые функции фреймворка, есть ли решения ?

Может https://docs.microsoft.com/ru-ru/dotnet/core/porting/windows-compat-pack ?
Re[2]: .NET Core и сборки .NET FW
От: okon  
Дата: 18.10.19 09:02
Оценка:
Здравствуйте, hi_octane, Вы писали:

O>>Есть следующие проекты ( упрощенно ) :

O>> App ( Core 2.0 )
O>> Interfaces ( Core 2.0 )
O>> Windows.Implementation ( FW 4.7.2 )
O>> Linux.Implementation ( Core 2.0 )
O>> Mac.Implementation ( Core 2.0 )
O>> …

_>Вариант 1: Перевести App и Interfaces на .NET Standard, тогда его можно будет использовать и из FW и из Mac/Linux

Тут немного обратная зависимость т.е. я использую не App ил Windows.Implementation, а наоборот Windows.Implementation пытаюсь загрузить в App.

App.csproj
Assembly.LoadFrom("Windows.Implementation.dll") условно так, при этом сборка нормально загружается, но при попытке вызова метода инстанса пишется Method not found. Например System.IO.Directory.GetAccessControl()

_>Вариант 2: Так как в Core 3 сделали и WinForms и WPF, имеет смысл посмотреть есть ли нужные функции в .NET Core 3, или можно их реализовать малой кровью (например выдергав рефлектором), и переехать всем проектом на Core 3


этого метода System.IO.Directory.GetAccessControl() — нету, есть в .NET FW только
”Жить стало лучше... но противнее. Люди которые ставят точку после слова лучше становятся сторонниками Путина, наши же сторонники делают акцент на слове противнее ( ложь, воровство, лицемерие, вражда )." (с) Борис Немцов
Re[2]: .NET Core и сборки .NET FW
От: okon  
Дата: 18.10.19 09:41
Оценка:
Здравствуйте, Valeriy_Gourov, Вы писали:

V_G>Здравствуйте, okon, Вы писали:


O>>Есть следующие проекты ( упрощенно ) :

O>> Windows.Implementation ( FW 4.7.2 )

O>>В Windows.Implementation хотелось бы облегчить работу и использовать готовые функции фреймворка, есть ли решения ?

V_G>Может https://docs.microsoft.com/ru-ru/dotnet/core/porting/windows-compat-pack ?

Да помогло, плюс еще пакет System.IO.FileSystem.AccessControl подключить и код поменять например
Directory.GetAccessControl переписать через new DirectorySecurity()
”Жить стало лучше... но противнее. Люди которые ставят точку после слова лучше становятся сторонниками Путина, наши же сторонники делают акцент на слове противнее ( ложь, воровство, лицемерие, вражда )." (с) Борис Немцов
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.