Pau*_*efe 1 asp.net class app-data webmatrix razor
我已经尝试了我在stackoverflow上找到的每个解决方案,但我似乎无法访问我在App_Data文件夹中创建的类.
如果我有这个类(只显示该类的一部分):
public class Encryption
{
public string Encrypt(string plainText, string Key)
{
byte[] key = StringToByteArray(Key);
string encrypted = ByteArrayToHexString(encryptStringToBytes_AES(plainText, key, null));
return encrypted;
}
}
Run Code Online (Sandbox Code Playgroud)
我应该能够在代码块中访问它,如:
@{
Encryption enc = new Encryption();
var data = enc.Encrypt("hello", "world");
}
Run Code Online (Sandbox Code Playgroud)
但是我收到一个错误,即无法找到类型或命名空间"加密".
我也尝试用命名空间导入它,但似乎无法将我的应用程序名称显示为命名空间,在asp.net mvc中似乎更简单.
我尝试了所有可以找到的更新配置文件的例子,但无济于事.有什么我需要做的,我在这里失踪了吗?
我终于找到了答案,我不得不创建一个App_Code文件夹,并将该类放在那里,以便它可以引用.
我想这是因为我在WebMatrix中创建了应用程序,而不是在VS2010中.因此,我的网站(MyWebsite)的名称并不等同于VS2010中项目名称所做的名称空间.这意味着如果我将Encryption类放在名为Utilities的文件夹中,我不能这样做:
@using MyWebsite.Utilities
Run Code Online (Sandbox Code Playgroud)
请注意,使用Starter Site的WebMatrix应用程序不会自动添加App_Code文件夹.
好吧,回到编码!