WebMatrix之WebMatrix.Data

WebMatrix数据访问系列目次:

  • WebMatrix之数据访问
  • WebMatrix之WebMatrix.Data
  • WebMatrix之WebMatrix.Data揭密
  • WebMatrix之改革WebMatrix.Data

在 上篇文章中,我简单形貌了在WebMatrix web开辟东西怎样简单的实现数据库的CRUD。其中,数据库访问组件WebMatrix.Data是微软专为WebMatrix打造的一个轻量型的动态 数据访问组件。你可以通过单独引用WebMatrix.Data.dll步伐集,来作为数据访问的轻量型组件。之以是说是轻量型的,由于该组件不付出存储 进程,事物,说到底,它就是专为SSCE量身打造的。

下面简单来看看WebMatrix.Data是怎样跨数据库平台事变的。

1.SQL Server 2005/2008的付出

以 往神马跨数据库付出的大家见得最多的莫过于三层中的通过更换DAL的dll,工场模式连合设置文件依靠注入实现数据库的切换。但是 WebMatrix.Data如今完全不必要那么做,最简单的方法是通过设置文件设置节ConnectionString具体设置即可。下例是利用的一个 控制台步伐,在app.config下的ConnectionString如下:

<connectionStrings><add name="mysqldb" connectionString="Server=.;Database=MyTestDb;User ID=sa;Password=******;" providerName="System.Data.SqlClient"/></connectionStrings>

设置文件设置好后你可以像如许访问数据:

//sql server            var db = Database.Open("

上述代码雷同访问SSCE数据库一样,差别之处在于必要提供相应数据库的设置毗连字符串,DataBase.Open要领传入一个定名的毗连字符串“mysqldb”。

必要留意的是假如省略connectionStrings中的providerName,将会抛出非常:

但是可以在AppSettings中这么来写来防备非常的抛出从而正常访问数据库:

<appSettings>    <add key="systemData:defaultProvider" value=http://www.cnblogs.com/Microred/archive/2012/04/04/"System.Data.SqlClient"/>  </appSettings>

假 如既不在connectionStrings中提供providerName,也不在AppSettings中设置providerName,那么 WebMatrix.Data会默认利用SSCE的SQL提供步伐(System.Data.SqlServerCe.4.0)。至于为什么,下篇文章将 会揭秘。

同样地,可以利用DataBase.OpenConnectionString(string connectionString)及其重载要领OpenConnectionString(string connectionString, string providerName)传入一个未定名的毗连字符串来创建一个DataBase实例。

2.Oracle的付出

Oracle的测试我选用了ODP.NET(Oracle Data Provider for .net)。期间,发明白一个问题(利用了一个偷懒的写法),假如connectionStrings像如许设置:

<add name="myoracle" connectionString="Data Source=ORADB;User ID=testdb;Password=*****;"  providerName="Oracle.DataAccess.Client" />

ORADB是在tnsnames.ora设置的,利用传统的方法没有任何问题:

var data = http://www.cnblogs.com/Microred/archive/2012/04/04/new DataTable();            using (OracleConnection connection = new OracleConnection(connectionstring))            {                using (OracleDataAdapter adapter = new OracleDataAdapter("SELECT * FROM testdb.SYS_DICT a", connection))                {                    adapter.Fill(data);                }            }

但是利用WebMatrix.Data访问就会有问题:

 var db = Database.Open("myoracle");            var list = db.Query("SELECT * FROM testdb.SYS_DICT a");            foreach (var item in list)            {                Console.WriteLine(item.DICT_NAME);            }

WebMatrix之WebMatrix.Data的更多相关文章

  1. Orchard 学习-安装Orchard

    前段时间使用一个ABP的框架进行了一个简单CMS开发.但感觉自己开发CMS不够灵活和通用,所以还是学习一下Orchard.学习的第一步,阅读官方的文档.由于是英文,所以我对其进行了翻译和记录,方便自己 ...

  2. Node.js 开发

    Node.js不必介绍,已经太火爆了.简单说是用Javascript开发Web服务端,基于Google V8引擎,单线程.不多说从零开始Windows平台下的Node.js的开发之旅. 环境工具为先 ...

  3. ASP.NET Web Pages:简介

    ylbtech-.Net-ASP.NET Web Pages:简介 ASP.NET 是一个使用 HTML.CSS.JavaScript 和服务器脚本创建网页和网站的开发框架. ASP.NET 支持三种 ...

  4. ASP.NET Web Pages - 教程

    ASP.NET Web Pages - 教程 ASP.NET 是一个使用 HTML.CSS.JavaScript 和服务器脚本创建网页和网站的开发框架. ASP.NET 支持三种不同的开发模式:Web ...

  5. [译]:Orchard入门——使用WebMatrix管理Orchard网站

    原文链接:Working with Orchard in WebMatrix WebMatrix--微软一站式Web开发工具,包括网站的创建.编辑以及发布--不过现在微软更推荐VS code .Web ...

  6. 使用WebMatrix发布网站

    使用WebMatrix发布网站 WebMatrix 简介: Microsoft WebMatrix 是微软最新的 Web 开发工具,它包含了构建网站所需要的一切元素.您可以从开源 Web 项目或者内置 ...

  7. IIS+WebMatrix 做 PHP 遇到的问题总结

    1. URL Binding Failure Webmatrix 解决办法: 用管理员权限运行 WebMatrix 并且 改 Port. 我反正是随便输入了一个 Port 就成功了, 默认的是 610 ...

  8. PhpStorm WebMatrix xDebug 配置开发环境

    1.首先下载WebMatrix安装程序,下载地址 http://www.microsoft.com/web/webmatrix/  安装步骤 参考:http://www.jb51.net/softjc ...

  9. 使用WebMatrix发布网站到Windows Azure

    1. 在本地机安装 WebMatrix, 安装Windows Azure SDK 2. 登录Windows Azure, 网站 > 创建一个新网站或选择已有网站 3. 在发布应用程序,选择下载发 ...

随机推荐

  1. http服务器返回状态代码含义

    100 - 表示已收到请求的一部分,正在继续发送余下部分. 101 - 切换协议. 2xx - 成功.服务器成功地接受了客户端请求: 200 - 确定.客户端请求已成功. 201 - 已创建. 202 ...

  2. ASP.NET Core Web API 开发-RESTful API实现

    ASP.NET Core Web API 开发-RESTful API实现 REST 介绍: 符合REST设计风格的Web API称为RESTful API. 具象状态传输(英文:Representa ...

  3. 学习“迷你ASP.NET MVC框架”后的小结

    看蒋老师MVC的书第二个大收获可以是算是看了这个迷你ASP.NET MVC框架了,虽然它远不如真正ASP.NET MVC(下文简称“MVC”)那么复杂庞大,但在迷你版中绕来绕去也够呛的.这部分我看了几 ...

  4. Telerik UI For WinForms--关于RadGridView的列排序

    在使用RadGridView绑定数据后,我希望属性的显示顺序按继承层次显示,但实际是相反的.下面示例两个类: public class A { public string Astr { get; se ...

  5. jquery简单原则器(匹配除了指定选择器之外的元素 selector 表示选择器)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. 设置surfaceView的背景为透明

    1. [代码][Java]代码    下面三句话加上就好了. surfaceView.setZOrderOnTop(true); surfaceView.setEGLConfigChooser(, , ...

  7. Java集合源码分析(二)ArrayList

    ArrayList简介 ArrayList是基于数组实现的,是一个动态数组,其容量能自动增长,类似于C语言中的动态申请内存,动态增长内存. ArrayList不是线程安全的,只能用在单线程环境下,多线 ...

  8. c# 学习心得(函数方法类)

    函数或者说方法都是写在类下的,我们可以通过函数名来调用它们.首先,我们要弄清楚为什么会有函数或者说方法这种东西?这里,我们使用了与前一篇同样的思维方式,先从它的目的或者实用价值出发.当我们在编写程序的 ...

  9. 使用 Google Analytics 跟踪 JavaScript 错误

    Google Analytics(谷歌分析)不仅仅是一个流量统计工具,你还可以用它来测量广告活动的有效性,跟踪用户多远到所需的页面流(从点击广告到购物车到结账页面)获取,并基于用户的信息设置浏览器和语 ...

  10. Web 前沿——HTML5 Form Data 对象的使用

    XMLHttpRequest Level 2 添加了一个新的接口——FormData.利用 FormData 对象,我们可以通过 JavaScript 用一些键值对来模拟一系列表单控件,我们还可以使用 ...