我正在将我的项目从经典的.net迁移到.net核心3.0。我在我的视图模型ICollectionView接口中使用,它在.net核心3.0框架中不被识别。
我添加了几个nuget包,试图使它工作,但没有运气。
微软声称System.ComponentModel定义了icollectionview (https://learn.microsoft.com/en-us/dotnet/api/system.componentmodel.icollectionview?view=netcore-3.0),但没有找到。我也试图包括窗口库,但也找不到。
我的环境有问题吗?我错过了什么吗?
谢谢你的帮助。
下面是要在.netcore3项目下编译的一个小类:
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello World!");
ICollectionView col =new CollectionViewSource().View;
col.Filter = null;
col.Refresh();
}
}编辑:
多亏了ALFA for Microsoft.Windows.SDK.Contracts,它在.net核心上提供了一个ICollectionView接口,但不幸的是,它还没有完成:过滤器和刷新没有实现。
发布于 2019-10-14 20:26:54
您需要从以下内容编辑项目文件YourProjectName.csproj:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
</PropertyGroup>对此:
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<UseWPF>true</UseWPF>
</PropertyGroup>这对我有帮助。
发布于 2019-10-09 06:45:20
在.NET Core 3.0+上,您可以安装Microsoft.Windows.SDK.Contracts包,它包含所有支持的Windows,直到Windows10Version1903,并且允许您使用ICollectionView。
Windows10WindowsCoreAPI包使您能够将最新的支持添加到WinRT框架4.5+和.NET核心3.0+库和应用程序中。
https://stackoverflow.com/questions/58298028
复制相似问题