我是ASP.NET环境的新手。

最近从事一个项目,我发现了一个问题

即,我必须在任何页面中的所有文件函数中添加使用System.io。使用SQL函数也一样,即必须完全使用该名称空间的任何方法

System.IO.FileStream fs = null;

代替

FileStream fs = null;

因此,简而言之,它不仅需要更多的键入时间,而且很难记住某些方法背后的名称空间。

但是我找到了一个解决方案。

通过在web.config中添加以下部分,我所有的页面都可以自动访问该名称空间

<namespaces>

        <add namespace="System.Data"/>
        <add namespace="System.Data.SqlClient"/>
        <add namespace= "MySql.Data.MySqlClient"/>
        <add namespace="System.IO"/>
</namespaces>

解决了上述问题。我现在面对一个新的。我的应用程序在App_Code文件夹中包含许多代码页面。在app_code文件夹中,我所有的页面都需要以下标题

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI.WebControls;
using System.IO;

关于为什么在Web.config中放置的声明不适用于该文件夹中的类中的声明。它们是同一Web应用程序的一部分。现在,我也必须在所有文件中考虑到这一点。

如果可以共享有关如何在app_code文件夹中拥有通用名称空间的信息,我会很感激。

有帮助吗?

解决方案

您不能根据文档 using 指示 是每个文件:

使用指令的范围仅限于显示的文件。

但是,有一个快捷方式要添加使用指令到文件中。
如果您在使用电流中输入不在电流中的内容,则在第一个字母下键入蓝色下划线,然后将鼠标移动到那里,然后单击以获取弹出菜单(或按下 Ctrl+.),在菜单中,选择“使用...”和Visual Studio自动使用文件顶部的语句插入正确的内容。

其他提示

我相信这是由于app_code的特殊性质。由于App_Code中的文件通常是类文件(即不是WebForms,用户控件等,仅是代码文件),因此它们仅使用特定的语言编译器(csc.exe或vbc.exe)编译。项目中的其他页面(这次所有WebForms等)都与ASP.NET编译器一起编译,该编译器考虑了Web.config文件的内容。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top