c#aspx使用Npgsql连接到postgresql

时间:2013-06-23 13:51:44

标签: asp.net web-config npgsql

我有一个令人讨厌的任务,就是将一个c#aspx页面连接到带有Npgsql的postgresql。

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

  

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

我有一个javascript函数,它调用下面的aspx页面从db:

获取数据
<%@ 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中进行设置,但我不能为我的生活做好准备。

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

1 个答案:

答案 0 :(得分: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层(http://en.wikipedia.org/wiki/Multitier_architecture):根据意图更好地组织代码。更容易找到错误并更改/维护代码...