我往往使很多文件夾,做OO當我把模型中的一個文件夾名爲模型,然後根據我有BLL,DAL,OBJ你可以在Web.Config中放入「使用」嗎?
而不是在我的所有文件using MyApp.Models;
我頂寫的如果可能的話,想把它放在Web.Config中。
我對.net很陌生,所以我不確定你是否可以或者即使這是個好主意。
我往往使很多文件夾,做OO當我把模型中的一個文件夾名爲模型,然後根據我有BLL,DAL,OBJ你可以在Web.Config中放入「使用」嗎?
而不是在我的所有文件using MyApp.Models;
我頂寫的如果可能的話,想把它放在Web.Config中。
我對.net很陌生,所以我不確定你是否可以或者即使這是個好主意。
我不相信有什麼辦法可以在C#文件的配置文件中做到這一點。
這不完全是你要求的,但最接近它的是你可以在web.config中註冊名稱空間,然後在ascx/aspx標記文件中使用,就像Steven提到的那樣。下面是一個例子:
<configuration>
<system.web>
<pages>
<namespaces>
<add namespace="System.Web.Mvc"/>
<add namespace="System.Web.Mvc.Ajax"/>
<add namespace="System.Web.Mvc.Html"/>
<add namespace="System.Web.Routing"/>
<add namespace="System.Linq"/>
<add namespace="System.Collections.Generic"/>
<!-- Add your own namespaces here -->
</namespaces>
</pages>
</system.web>
</configuration>
編輯:下面加另一個建議:
如果你有使用的語句是幾個必須包含大部分的的.cs的文件中,然後我可以建議最好的辦法是要麼A)讓那些使用語句方便,你可以複製/粘貼它們的需要,或B)創建一個C#代碼段,如下面的例子:當您添加文件到相應的
<?xml version="1.0" encoding="utf-8" ?>
<CodeSnippets xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
<CodeSnippet Format="1.0.0">
<Header>
<Title>using MyApp</Title>
<Shortcut>usingmyapp</Shortcut>
<Description>Code snippet for common using statements with MyApp</Description>
<Author></Author>
<SnippetTypes>
<SnippetType>Expansion</SnippetType>
</SnippetTypes>
</Header>
<Snippet>
<Code Language="csharp">
<![CDATA[using MyApp.Common;
using MyApp.Common.Extensions;
using MyApp.Domain;
using MyApp.Models;
// *** add whatever using statements you want here ***
$end$]]>
</Code>
</Snippet>
</CodeSnippet>
</CodeSnippets>
位置(... \ My Documents \ Visual Studio 2008 \ Code Snippe ts \ Visual C#\ My Code Snippets),那麼你應該能夠開始在想要使用語句出現的.cs文件的位置輸入「usingmyapp」(或者任何你放在<Shortcut>
元素中的內容); intellisense應該識別它並通過插入代碼片段的<Code>
內容爲您自動填充。
就個人而言,我不打擾做這樣的事情;我不喜歡在我的文件中添加一堆使用語句,如果其中一些語句實際上並未在該文件中使用。此外,如果您開始使用出現在多個命名空間中的類名稱,則我認爲批量添加多個使用語句可能會導致混淆模糊的名稱衝突。但我認爲這只是個人偏好;如果你想這樣做,繼續。
是的,用於CodeBehind和/或Class文件。這也是一個壞主意@Steven?我想我知道這會讓它更難以知道從哪裏來。然而在調試模式下,你可以看到究竟來自哪裏。 我正在考慮的命名空間是使用MyApp.Models的文件夾,如 ; 然後在代碼中,我可以做類似 BLL.Category myCategory = BLL.Category; 而不是 MyApp.Models.BLL。類別myCategory = MyApp.Models.BLL.Category; – 2010-08-06 13:39:42
@Nathan,這樣做不是一件壞事。如果它讓你更容易編寫代碼,你會盡快完成這項工作,這是一件好事。您隨時可以使用Visual Studio的「組織使用/刪除和排序」功能清理。 – Steven 2010-08-06 16:54:26
目前,因爲我想學習如何正確地做到這一點。我現在處於培訓模式並儘可能快地學習。我有很多東西要學,但我覺得我每天都在學習新的東西。 – 2010-08-10 17:24:30
可以註冊用於標記的程序集和名稱空間,但不能用於代碼文件背後的代碼。 VB.NET在項目級別上支持這一點,但我從來不喜歡這個功能,因爲它使得它不太清楚你使用的是什麼。
這是不可能的。
類名必須在編譯時解決,web.config可以在部署後隨時更改。
你說的是代碼隱藏還是頁面本身?我在這裏假設代碼隱藏,你不是在談論導入指令。 – 2010-08-06 13:10:30