VB.Net Object Initializer —VB.Net在建立Object 的同時初始化這Object 的屬性

我有時候很喜歡用C#的
可能是在網上有很多資源都是用C#寫的
其中一個我喜歡C Sharp 的原因是 在C#建立Object 的同時也可以初始化這Object 的屬性

E.G.

ShareChiWaiClass ShareChiWaiObj = new ShareChiWaiClass(){Blog_Author = "ShareChiWai",
             Blog_Content = "My content",
             Blog_ID = 1,
             Blog_Title = "Object Initializer Example"
            }

VB.Net 卻要這樣寫

Dim ShareChiWaiObj As New ShareChiWaiClass
ShareChiWaiObj.Blog_Author = "ShareChiWai"
ShareChiWaiObj.Blog_Content = "My content"
ShareChiWaiObj.Blog_DateCreated = Now
ShareChiWaiObj.Blog_ID = 1
ShareChiWaiObj.Blog_Title = "Object Initializer Example"
最近我終於發現了如何在VB.Net 中 在建立 Instance 的同時也初始化這Object/instance 的屬性
是這樣的

        Dim ShareChiWaiObj As New ShareChiWaiClass With
            {.Blog_Author = "ShareChiWai",
             .Blog_Content = "My content",
             .Blog_DateCreated = Now,
             .Blog_ID = 1,
             .Blog_Title = "Object Initializer Example"
            }

需要使用With 這個關鍵字…
和在Assign 屬性時 需要加”.” 相對比C# 麻煩一點點…
但是和以前的做法對比一下卻方便很多了

Hope you find it useful

Leave a Reply