0

我有一项烦人的任务,即使用 Npgsql 将 ac#aspx 页面连接到 postgresql。

我遇到的问题是,当我尝试导入 Npgsql 时,我收到以下 aspx 错误消息返回:

CS0246:找不到类型或命名空间名称“Npgsql”(您是否缺少 using 指令或程序集引用?)

我有一个 javascript 函数,它调用下面的 aspx 页面从数据库中获取数据:

<%@ language="C#"%>
<%@ Import Namespace="Npgsql" %>
<%

  // PostgeSQL-style connection string
  string connstring = String.Format("Server=localhost;Port=5432;UID=posgres;Password=pass;Database=postgres_db;";
  NpgsqlConnection conn = new NpgsqlConnection(connstring);      
  conn.Open();
%>

我假设我需要在我的 web.config 中设置它,但我不能为我的生活而设置它。

任何帮助将不胜感激!谢谢。

4

1 回答 1

1

您的问题是没有被引用的 Npgsql.dll 。您只导入命名空间。

将 SQL 破解到 ASP.NET 文档中并不是最佳实践……解决方案是将 DLL 添加到 web.config 文件中:

 ...
  <system.web>         
    <compilation debug="true" targetFramework="4.5">                              
      <assemblies> 
        <add assembly="Npgsql, Version=2.0.11.93, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" />  
  ...

但我建议使用 Visual Studio 创建一个类库项目或至少一个 Web 应用程序项目(Express 版本是免费的)。然后右键单击名为references 的目录并在那里添加DLL。为什么?N-Tier ( http://en.wikipedia.org/wiki/Multitier_architecture ):按其意图更好地组织代码。更容易发现错误和更改/维护代码......

于 2013-06-23T17:29:54.780 回答