[英]FileNotFoundException exists in both System.IO and System.Runtime
我已經開始了一個簡單的新的ASP.NET核心Web項目,它需要讀取文件的內容。
在新的類庫(包) (Visual C#> Web)項目中,默認情況下,該項目針對以下框架。 我也添加了System.IO.FileSystem
。
"frameworks": {
"net451": { },
"dotnet5.4": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.IO.FileSystem": "4.0.0",
"System.Runtime": "4.0.21-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
在我的一個類中,我試圖拋出一個FileNotFoundException
但是我遇到了針對.NET Platform 5.4的以下錯誤:
CS0433類型'FileNotFoundException'存在於'System.IO,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'和'System.Runtime,Version = 4.0.20.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'
我已經嘗試刪除對System.Runtime
的引用,但這是徒勞的,因為System.IO.FileSystem
本身將其列為依賴項。
這似乎只是在構建針對.NET Platform 5.4時表現出來,如下所示:
和違規代碼:
if (!File.Exists(file))
throw new System.IO.FileNotFoundException();
我是否錯誤配置了我的項目依賴項? 是否有我應該使用的替代IO命名空間?
我是否錯誤配置了我的項目依賴項? 是否有我應該使用的替代IO命名空間?
您錯誤配置了項目依賴項。 錯誤消息告訴我們很多。 沒有替代的IO命名空間可供使用。 相反,您需要重新配置項目依賴項以避免命名沖突。
global.json > SDK的目標RC1。
"sdk": {
"version": "1.0.0-rc1-update1"
}
project.json >更改依賴項以兼容。 事實證明, 4.0.0
版本的System.IO
和System.Runtime
是兼容的,而您使用的測試版則不兼容。
"frameworks": {
"net451": { },
"dotnet5.4": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Console": "4.0.0-beta-23516",
"System.IO": "4.0.0",
"System.Runtime": "4.0.0"
}
}
}
如果您准備好定位RC2 SDK,那么您可以定位特定的.NET平台標准。 以下是針對rc2-20221
SDK和netstandard1.3
。
global.json > SDK的目標RC2。
"sdk": {
"version": "1.0.0-rc2-20221"
}
project.json>使用netstandard
確保兼容的API表面區域。
"dependencies": {
"Microsoft.Extensions.PlatformAbstractions": "1.0.0-*"
},
"frameworks": {
"netstandard1.3": {
"dependencies": {
"System.Console": "4.0.0-beta-*"
},
"imports": [
"net451",
"dotnet5.4"
]
}
}
這是一個在我的機器上構建和運行的小程序。 它使用選項1或選項2。
public class Program
{
public static void Main(string[] args)
{
try
{
throw new System.IO.FileNotFoundException();
}
catch(System.Exception ex)
{
System.Console.Write(ex.ToString());
System.Console.ReadKey();
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.