我在目标netstandard2.1
中有一些类库项目。
当我在目标.NET Framework v4.8
中引用我的WPF项目时,在构建时出现错误:
严重性代码描述项目文件行抑制状态 错误项目'.. \ ClassLibrary1 \ ClassLibrary1.csproj'目标为'netstandard2.1'。面向'.NETFramework,Version = v4.8'的项目无法引用它。 WpfApp1
我该怎么办?
更新:
我阅读了this关于引用netcoreapp2.1
的问题,并在该答案中讲述了添加netstandar2.1
的问题。但是我的库已经在目标netstandard2.1
中!
答案 0 :(得分:2)
我该怎么办?
或
更新:
.Net Core 3已发布,您也可以使用它的稳定版本。
答案 1 :(得分:2)
根据compatibility matrix,我的NetFramework 4.8项目应该不能引用NetStandard 2以前的库。因此,import { Injectable } from '@angular/core';
import { CanActivate, Router, ActivatedRouteSnapshot, RouterStateSnapshot } from '@angular/router';
import { AuthService } from '../auth-service/auth-service.service';
import { Observable } from 'rxjs';
@Injectable({
providedIn: 'root'
})
export class RedirectGuardService implements CanActivate {
constructor(
private router: Router,
private authService: AuthService
) {}
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) : Observable<boolean> | Promise<boolean> | boolean {
const user = this.authService.userVal;
if (user) {
this.router.navigate(['/'+ user.role]);
return true;
}
this.router.navigate(['/login'], { queryParams: { returnUrl: state.url }});
return false;
}
}
的答案是正确的。
here中列出的版本代表NuGet用来确定给定.NET标准库是否适用的规则。
.NET Framework将不支持.NET Standard 2.1或任何其他更高版本。有关更多详细信息,请参见此blog post。