5

Tôi đang sử dụng Sơ đồ lớp trong Visual Studio 2008 để tạo một số lớp có thuộc tính. Tôi nhận thấy rằng khi tôi tạo thuộc tính mới trong Sơ đồ lớp, nó xuất hiện trong mã như sau:Sơ đồ lớp Visual Studio 2008 tạo thuộc tính trống, không tự động sửa đổi

public DateTime DateBilled 
{ 
    get 
    { 
     throw new System.NotImplementedException(); 
    } 
    set 
    { 
    } 
} 

Yuck. Tôi muốn nhiều hơn nó kết thúc như là một autoproperty như thế này:

public DateTime DateBilled { get; set; } 

Có cách nào tôi có thể thay đổi hoặc tùy chỉnh không?

+0

(Tôi có thể sử dụng CodeRush để chuyển đổi chúng, nhưng sau đó tôi phải thực hiện chúng một lần. Tôi muốn chúng được tạo đúng cách ngay từ đầu.) –

+0

Ngoài ra, tôi đã chạy qua này: http://modeling.codeplex.com/ Đó là một giải pháp. Nhưng không hoàn toàn. Tôi muốn có autoproperties là mặc định khi tôi gõ vào cửa sổ Class Details; việc sử dụng này khiến việc đặt loại thuộc tính trở nên khó khăn. –

Trả lời

1

Đây không phải chính xác những gì bạn đang tìm kiếm, nhưng nó có thể giúp bạn đạt được kết quả mình cần.

Đây là Macro Visual Studio 2008 sẽ tìm thấy sơ đồ lớp được tạo thuộc tính và thay thế chúng bằng thuộc tính tự động.

  1. Trong VS vào View -> Windows khác -> Macro Explorer
  2. Nhấp chuột phải vào "MyMacros" và chọn "mô-đun mới ..."
  3. Give it bất kỳ tên nào bạn muốn
  4. nhấp chuột phải vào đó và chọn "vĩ mô mới"
  5. Dán mã này trong

Dưới đây là các mã:

DTE.ExecuteCommand("Edit.Find") 
DTE.Find.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxRegExpr 
DTE.Find.Target = vsFindTarget.vsFindTargetCurrentDocument 
DTE.Find.FindWhat = "<get$" 
DTE.Find.MatchCase = False 
DTE.Find.MatchWholeWord = False 
DTE.Find.Backwards = False 
DTE.Find.MatchInHiddenText = True 
DTE.Find.Action = vsFindAction.vsFindActionFind 
While DTE.Find.Execute() <> vsFindResult.vsFindResultNotFound 
    DTE.ActiveDocument.Selection.LineDown(True, 6) 
    DTE.ExecuteCommand("Edit.Delete") 
    DTE.ActiveDocument.Selection.Text = "get; set;" 
End While 

Đây chỉ là một hack, và tôi không chắc liệu nó có hoạt động với tất cả đầu ra từ trình thiết kế lớp, nhưng nó đã làm việc trong thử nghiệm của tôi cho đến nay và chắc chắn sẽ tiết kiệm được vài lần nhấn phím.

Hy vọng điều đó sẽ hữu ích!

Các vấn đề liên quan