我创建了一个针对。net标准2.0的DLL项目。
使用NuGet,我添加了对microforest . aspnetcore . http的引用。(2.2.2)
创建了这个类:
using System;
using Microsoft.AspNetCore.Http;
namespace netstdlib
{
public class Class1
{
public IResult DoGet()
{
return null;
}
}
}
当我构建时,我得到
Build started...
1>------ Build started: Project: netstdlib, Configuration: Debug Any CPU ------
1>D:PROJECTSexperimentCS framework testnetstdlibClass1.cs(10,25,10,32): error CS0246:
The type or namespace name 'IResult' could not be found (are you missing a using
directive or an assembly reference?)
1>Done building project "netstdlib.csproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 2 up-to-date, 0 skipped ==========
在我看来,它应该在我使用的库中找到IResult。怎么了?
ASP中添加了Microsoft.AspNetCore.Http
命名空间中的IResult
接口。. NET Core 6,所以如果你想使用它,你需要更新。
参见文档:IResult Interface。
感谢Camilo指出IResult不能工作的原因。我确实找到了一个可行的方法:
HttpClient产生的HttpResponseMessage。GetAsync在。net核心中可用。无论这些类是否在。net框架中可用,我没有尝试,但我可以使用HttpResponseMessage在标准dll中提取数据,并将该数据返回到。net框架项目。