每隔一段時間,我都會修改一段代碼,我想「鎖定」或使代碼區域爲「只讀」。這樣,我可以修改代碼的唯一方法是如果我先解鎖它。有沒有辦法做到這一點?有沒有辦法在Visual Studio中創建一個只讀區域?
3
A
回答
1
將代碼拆分爲單獨的文件,然後檢入源代碼控制系統?
5
在許多情況下,最簡單的方法是使其成爲部分類型 - 即其源代碼分佈在多個文件中的單個類。然後你可以讓一個文件是隻讀的,另一個文件是可寫的。
要聲明一個局部類型,你只需要使用partial
上下文關鍵字聲明:
// MyClass.First.cs:
public partial class MyClass
{
void Foo()
{
Bar();
}
void Baz()
{
}
}
// MyClass.Second.cs:
public partial class MyClass
{
void Bar()
{
Baz();
}
}
正如你所看到的,它結束了,好像來源是都在同一個文件 - 你可以調用在另一個文件中聲明的方法沒有問題。
0
我想過這個,但我寧願將這個類放在一個文件中。 - danmine
對不起,mac。巫毒教的位爲SVN預先承諾可能趕上它,但是否則沒有其他比
//如果更改此代碼,你被解僱了
2
它編譯成成庫DLL,並使其可在參比溶液其他的項目。
1
鑑於您對部分類別的反駁......我無法知道單個文件中缺少文檔。其他選項?
- 繼承;但基類中的受保護代碼(在您控制的程序集中);繼承者只能撥打
public
/protected
成員 - postsharp - 堅持保護邏輯屬性聲明外部
然而,這兩個仍然需要多個文件(也可能是多個組件)。
0
如果您使用版本控制系統,這是完全不必要的。因爲一旦你檢查了它,編輯代碼的哪一部分並不重要,你總是可以進行比較或回滾。哎呀,你可能會意外地清除所有的源代碼,並仍然得到它。
我得到一個非常糟糕的「code smell」的事實,你想鎖定代碼的某些部分。我在猜測,也許你在一個課堂上做得太多了,在這種情況下,將它重構爲適當的一組課程。事實上,經過10多年的視覺工作室的存在,這個功能是不可用的,應該表明,也許你的願望是由於設計不佳。
相關問題
- 1. 有沒有辦法在Visual Studio中創建另一個項目?
- 2. 有沒有辦法創建一個不可變(只讀)的XDocument?
- 3. 有沒有辦法讓Visual Studio忽略區域
- 4. 有沒有辦法在Symfony2中創建區域依賴路由
- 5. 有沒有辦法在.sql腳本中創建區域?
- 6. 有沒有辦法使用visual studio 2010從sql表中創建一個類?
- 7. Visual Studio沒有創建一個.exe
- 8. 有沒有辦法從visual studio(C++)解決方案創建CMakelist.txt?
- 9. 有沒有辦法在Visual Studio中擁有多個主體?
- 10. 有沒有辦法創建一個只考慮域值絕對值的規模?
- 11. 有沒有辦法遍歷visual studio shell?
- 12. 有沒有辦法在Visual Studio中創建顯式的EventHandler委託?
- 13. 有沒有辦法在Hibernate中只使用一個表創建OneToMany關係?
- 14. 有沒有辦法讓Visual Studio 2012更像Visual Studio 2010?
- 15. 有沒有辦法在CSS中創建一個克隆?
- 16. 有沒有辦法在android spinner中創建一個選項組?
- 17. 有沒有辦法在c#中創建一個sqllocaldb實例?
- 18. 有沒有辦法在Slick中創建一個聚類索引?
- 19. Django - 有沒有辦法在模板中創建一個變量?
- 20. 有沒有辦法在Zend2中創建一個組合框
- 21. 有沒有辦法創建一個沒有JS的消息框?
- 22. 有沒有辦法在Visual Studio中顯示當前的TFS工作區?
- 23. 有沒有辦法在Visual Studio intellisense中定義一個未定義的對象?
- 24. 有沒有辦法在Visual Studio 2013中移動書籤行號?
- 25. 有沒有辦法在visual studio 2005中恢復變更集2005
- 26. 有沒有辦法在Visual Studio中安裝TypeScript與IE8
- 27. 有沒有辦法在Visual Studio 2010中快速查找文件?
- 28. 有沒有辦法在Visual Studio 2008中摺疊javascript或CSS?
- 29. 有沒有辦法在Visual Studio中進行Scala編程?
- 30. 有沒有辦法在Visual Studio中重新啓動FSI?
也許你可以爲VS編寫一個插件來檢查一個區域是否被擴展,區域名稱是否以某個關鍵字開頭? – 2009-01-25 22:53:57
寫一個VS插件有多困難? – danmine 2009-01-26 06:23:09