Asp.net 无法访问WebMatrix(razor)App_数据文件夹中的我的类

Asp.net 无法访问WebMatrix(razor)App_数据文件夹中的我的类,asp.net,class,razor,webmatrix,app-data,Asp.net,Class,Razor,Webmatrix,App Data,我尝试了在stackoverflow上找到的所有解决方案,但似乎无法访问在App_数据文件夹中创建的类 如果本课程仅显示部分课程: public class Encryption { public string Encrypt(string plainText, string Key) { byte[] key = StringToByteArray(Key); string encrypted = ByteArrayToHexString(encryp

我尝试了在stackoverflow上找到的所有解决方案,但似乎无法访问在App_数据文件夹中创建的类

如果本课程仅显示部分课程:

public class Encryption
{
    public string Encrypt(string plainText, string Key)
   {
       byte[] key = StringToByteArray(Key);
       string encrypted = ByteArrayToHexString(encryptStringToBytes_AES(plainText, key, null));
       return encrypted;
   }
}
我应该能够在如下代码块中访问它:

@{
    Encryption enc = new Encryption();
    var data = enc.Encrypt("hello", "world");
}
但我得到一个错误,类型或名称空间加密找不到

我还尝试用名称空间导入它,但似乎也无法将我的应用程序名显示为名称空间,在asp.net mvc中似乎更简单


我尝试了所有我能找到的更新配置文件的例子,但都没有用。有什么我需要做的事情我在这里遗漏了吗?

应用程序数据中的类没有编译。它用于SQL CE、Express数据库和特定于应用程序的数据,而不是代码。在根目录下创建另一个文件夹,然后将类文件移动到那里,或者将其放在项目的根目录下。

应用程序数据中的类不会被编译。它用于SQL CE、Express数据库和特定于应用程序的数据,而不是代码。在根目录下创建另一个文件夹,然后将类文件移动到那里,或者将其放在项目的根目录上。

我终于找到了答案,我必须创建一个App_Code文件夹,并将类放在其中以供参考

我想这是因为我在WebMatrix中创建了应用程序,而不是在VS2010中。因此,我的网站MyWebsite的名称与VS2010中的项目名称不同,它并不等同于名称空间。这意味着如果我将加密类放在名为Utilities的文件夹中,我将无法执行以下操作:

@using MyWebsite.Utilities
请注意,使用Starter站点的WebMatrix应用程序不会自动添加应用程序代码文件夹


好吧,回到编码上来

我终于找到了答案,我必须创建一个App_代码文件夹,并将类放在其中,使其可引用

我想这是因为我在WebMatrix中创建了应用程序,而不是在VS2010中。因此,我的网站MyWebsite的名称与VS2010中的项目名称不同,它并不等同于名称空间。这意味着如果我将加密类放在名为Utilities的文件夹中,我将无法执行以下操作:

@using MyWebsite.Utilities
请注意,使用Starter站点的WebMatrix应用程序不会自动添加应用程序代码文件夹


好吧,回到编码上来

我确实有它最初在一个子文件夹实用程序,我看不到代码。我在某个地方读到cs文件需要放在app_数据文件夹中,所以我把它移到了那里,但仍然看不到它。因此,我只是将其移动到根目录下,仍然无法使用该类。您是否构建了解决方案Ctrl+Shift+B?我最初将其放在子文件夹Utilities中,但我看不到代码。我在某个地方读到cs文件需要放在app_数据文件夹中,所以我把它移到了那里,但仍然看不到它。所以,我只是把它移到了根目录下,但我仍然无法使用这个类。你已经构建了解决方案Ctrl+Shift+B了吗?