Как получить доступ к App_Code/file.cs из файла aspx?

У меня есть следующий файл: App_code/utility.cs, Этот файл должен быть доступен через aspx файл. В моем файле ASPX у меня есть следующее <%@ Import Namespace ="../App_Code/Utility.cs" %>, Когда я пытаюсь построить его, я получаю следующую ошибку: Identifier expected, Как получить доступ к App_code/file.cs из файла aspx?

небольшой пример файла Utility.cs:

public class Utility
 {
  public static string EncryptString(string fieldValue, string IV = "")
   {
      //code in here

    }
 }

Вот как выглядит файл aspx:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="file.aspx.cs" Inherits="file" EnableEventValidation="false" EnableViewState="true" %>

<%@ Import Namespace ="../App_Code/Utility.cs" %>

<!DOCTYPE html>

1 ответ

Решение

Если вы не используете namespace затем прямо позвоните на странице aspx - вот так.

<%=Utility.EncryptString("theEncodedString") %>

если у вас есть пространство имен, например, если у вас есть

namespace myNameSpace
{
  public class Utility
  {
     public static string EncryptString(string fieldValue, string IV = "")
     {
        //code in here
     }
   }
}

тогда вы можете объявить это на странице

<%@ Import Namespace ="myNameSpace" %>

или используйте его, чтобы найти свой класс как

<%=myNameSpace.Utility.EncryptString("theEncodedString") %>

Файлы в App_Code компилируются как библиотека dll - вы затем используете их класс, включая их пространство имен (а не по ссылке на файл) - для asp.net файл не существует, его скомпилированная версия существует как dll.

Другие вопросы по тегам