Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将Firebird连接到ASP.net WebAPI项目_C#_Asp.net_Asp.net Mvc_Asp.net Web Api_Firebird - Fatal编程技术网

C# 将Firebird连接到ASP.net WebAPI项目

C# 将Firebird连接到ASP.net WebAPI项目,c#,asp.net,asp.net-mvc,asp.net-web-api,firebird,C#,Asp.net,Asp.net Mvc,Asp.net Web Api,Firebird,我正在学习ASP.net,特别是WebAPI和MVC。我使用的是Visual Studio Community 2013、.NET 4.5和C。我完全是新手,所以我实际上要通过本演练来了解事物的工作原理: 到目前为止一切正常,但我想继续连接数据库以填充我的数据集。我非常熟悉Firebird的使用,能够通过NuGet和安装适当的DDEX文件将Firebird安装为数据提供程序。不幸的是,我很难理解如何查询数据库和填充数组 基本上,我的代码是这样的: using System; using Syst

我正在学习ASP.net,特别是WebAPI和MVC。我使用的是Visual Studio Community 2013、.NET 4.5和C。我完全是新手,所以我实际上要通过本演练来了解事物的工作原理:

到目前为止一切正常,但我想继续连接数据库以填充我的数据集。我非常熟悉Firebird的使用,能够通过NuGet和安装适当的DDEX文件将Firebird安装为数据提供程序。不幸的是,我很难理解如何查询数据库和填充数组

基本上,我的代码是这样的:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Web.Http;
using FirebirdSql.Data.FirebirdClient;
using System.Configuration;
using System.Collections;

namespace NBAPoolWebService.Controllers
{
    public class UserController : ApiController
    {

        User[] users = new User[] 
        {
            new User { ID = 1, CREATED=new DateTime(2011, 1, 12), ISACTIVE='Y', USERNAME="TEST1"}, 
            new User { ID = 2, CREATED=new DateTime(2012, 2, 22), ISACTIVE='Y', USERNAME="TEST2"}

        };

        public IEnumerable<User> GetAllUsers()
        {
            return users;
        }

        public IHttpActionResult GetUser(int id)
        {
            var user = users.FirstOrDefault((p) => p.ID == id);
            if (user == null)
            {
                return NotFound();
            }
            return Ok(user);
        }
    }
}
目前,如果我访问,我会通过JSON获得测试用户列表,这正是我想要的

我希望了解的是如何通过SQL查询更改设置为来自Firebird数据库的数组。我知道如何从用户那里获取查询select*,我通过visual studio确认了有效的连接,并且看过一些关于如何使用FBConnection的教程

我遇到的困难是实际使用查询中的数据并填充数组中的对象

任何帮助都将不胜感激。如果你能告诉我需要输入的代码,或者给我指出正确的教程,或者如果你认为我应该使用特定的技术或方法,那就太好了

我真正想要完成/理解的是如何创建一个用JSON响应并连接到Firebird数据库的Web服务


提前感谢您的帮助

经过一系列研究,我偶然发现了以下链接:

[连结]

因此,我删除了现有的用户控制器和模型,并使用名为User的ADO.NET实体数据模型创建了一个新模型

在此基础上,我使用了从数据库设计的EF,并使用了我在web.config中创建的connectionstring

从那里,我可以选择我想要的数据库表,并构建了一个名为User.edmx的模型

之后,我使用实体框架,使用带有动作的WebAPI2控制器创建了一个控制器

这允许我选择具有相应名称的模型类

此时,我认为我需要对实体框架进行一些研究,但这至少允许我创建一个连接到数据库的web服务

希望这能帮助其他年轻的新手开始使用ASP.net、MVC、WebAPI、实体框架和Firebird


我接下来的步骤是了解User.edmx,以及我是否应该为所有表而不是一个表创建一个模型。希望我在重新研究实体框架时能理解这一点。

通过观看pluralsight视频,我了解了大量有关.Net和实体框架的内容。如果你没有与他们的帐户,注册试用将允许你观看。有一个模块专门用于创建数据库第一实体数据模型,您可能会发现这很有用。

您首先需要安装Firebird connector for Dotnet,然后可以使用适当的连接字符串来查询数据库,就像查询mysql/access/sqlite一样。通过nuget PM>安装程序包FirebirdSql.Data.FirebirdClient Hanks Bellash,我在我的计算机上进行了以下安装:[link][link link]我还搜索了NuGet,并通过VisualNuGetManager添加了实体框架、FBADO.net提供程序和FB实体框架提供程序。我真正希望得到的是查询数据库的语法,并将这些信息传递到我的数组中。我妻子发现自己的处境与你最初的问题几乎一模一样,但没有解决它,甚至在这里给出了你的答案。但她还没有足够的知名度来亲自发表这篇评论,所以我正在帮助她:在看到这个答案之前,我几乎放弃了让firebird在VS2013中与entity framework 6合作。您提到您使用ADO.NET实体数据模型创建了一个新模型”,这就是我遇到的问题。我想我已经做了与你在问题评论中提到的相同的设置,但是我显然遗漏了一些东西。你介意看看我的问题,看看你是否注意到我可以做些不同的事情来解决我的问题吗?谢谢谢谢Sherri,我看到了你丈夫关于你遇到的问题的评论,看起来你能让事情进展顺利,所以我不会回应。实际上我也有同样的问题,但我的项目是本地的。在对现有项目进行了大量调试之后,在基本上删除并重新安装了所有必需的组件之后,我刚刚启动了一个新项目。这导致我的FB连接窗口消失。这需要我修复我的machine.config。我意识到这个评论是冗长的,不适用于你,只是希望帮助别人。