簡體   English   中英

為什么不能使用靜態只讀對象屬性?

[英]Why can not use static readonly object property?

這是常量類:

 public static class Constants
    {
        public const string USER_ID = "conduent";
        public const string PASSWORD = "593becd1-02f6-46f0-bf34-25b393ad041b";
        public static readonly Uri BASE_URI = new Uri("https://staging.test-476b.com");
        public static readonly Uri GET_TOKEN_URI = new Uri("api/session");
        public static readonly Uri SEND_CASE_URI = new Uri("api/referral_request");
    }

這就是用法

public class DanestreetHttp
    {

        private AuthToken authToken = null;

        private readonly HttpClient httpClient = new HttpClient()
        {
            BaseAddress = Constants.BASE_URI
        };
}

在屏幕快照上,您可以看到錯誤,該錯誤在我將BaseAddress = Constants.BASE_URI更改為BaseAddress = new System.Uri("https://staging.test-476b.com")之后消失了。 靜態只讀初始化有什么問題?

屏幕

圖片2

PS。 我當前的解決方案: BaseAddress = new Uri(Constants.BaseAddress)

問題是Constants中的2或URI無效,從而阻止了此類的初始化屬性。 如果您更換它應該工作

public static readonly Uri GET_TOKEN_URI = new Uri("api/session");
public static readonly Uri SEND_CASE_URI = new Uri("api/referral_request");

public static readonly Uri GET_TOKEN_URI = new Uri("http://api/session");
public static readonly Uri SEND_CASE_URI = new Uri("http://api/referral_request");

(或https)

小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM