[英]Cannot declare any signed Integer types in C#
我正在使用 Visual Studio 2019 中的 ASP.NET 應用程序。我遇到了一個我以前從未遇到過 C# 的問題。 我似乎無法聲明除 UInt64 之外的任何 integer 類型。
嘗試聲明 Int64 或 long 會給我錯誤,因為它表示我正在嘗試將 UInt64(或 ulong)轉換為其中一種類型。
具體錯誤如下(顯示的 Azure 租戶 ID 是虛擬值,不要驚慌):
線
Int64 tenantInt = 11132432026456784806;
給出以下錯誤
Error CS0266 Cannot implicitly convert type 'ulong' to 'long'. An explicit conversion exists (are you missing a cast?)
然后是下面的代碼行
long TenantID = -11132432026456784806;
給出以下錯誤
Error CS0023 Operator '-' cannot be applied to operand of type 'ulong'
這是相同錯誤的圖像: HERE
我以前在 C# 工作時從未遇到過這種情況。 通常這些聲明工作正常。 Visual Studio 有問題嗎? 它不斷將數字讀取為 UInt64,並嘗試使用 (Int64) 或 (long) 進行轉換遇到另一個錯誤,即 UInt64(或 ulong)無法轉換為這些類型。
您必須使用“ulong”,因為支持 18.446.744.073.709.551.615。
卡爾滕是正確的。 我試圖分配的數字對於 Int64 和 long 來說太大了。 從本質上講,我得到這個 API 的人故意使數字太大,所以該行會引發錯誤,所以我會看到該行並意識到我需要用我自己的 ID 替換它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.