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如下:

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

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

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

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

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

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

  1. <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像如许设置:

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

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

  1. 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访问就会有问题:

  1. 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. MVC-自定义过滤器

    APS.NET MVC中的每一个请求,都会分配给相应的控制器和对应的行为方法去处理,而在这些处理的前前后后如果想再加一些额外的逻辑处理.这时候就用到了过滤器. 自定义过滤器: 若要自定义一个过滤器,则 ...

  2. No.014:Longest Common Prefix

    问题: Write a function to find the longest common prefix string amongst an array of strings. 官方难度: Eas ...

  3. 快速熟悉Velocity

    果然公司用的东西跟平时学的东西不太一样,我们公司前台页面并不是我们熟悉的.html或者.jsp文件,而是很多人不知道的 .vm文件,其实只要我们理解了jsp文件,vm文件也就是一些基本语法不同而已. ...

  4. 【Effective Java】6、使用复合优先于使用继承

    这个,不管是什么书都会这样说,因为常常我们并不需要继承,而只是想把类进行一定的扩展,而我们想扩展的属性或方法对应的类都有,这个时候如果两者是is a的关系,这种关系是确实存在的,那么就可以使用继承,不 ...

  5. Android总结篇系列:Android Service

    Service通常总是称之为“后台服务”,其中“后台”一词是相对于前台而言的,具体是指其本身的运行并不依赖于用户可视的UI界面,因此,从实际业务需求上来理解,Service的适用场景应该具备以下条件: ...

  6. java顺序表和树的实现

    一.顺序表 1.线性表 //java顺序表的实现,如ArrayList就是用线性表实现的,优点是查找快,缺点是添加或删除要移动很多元素,速度慢 public class SequenceList { ...

  7. activiti工作流的web流程设计器整合视频教程

    本视频为activiti工作流的web流程设计器整合视频教程 整合Acitiviti在线流程设计器(Activiti-Modeler 5.21.0 官方流程设计器) 本视频共讲了两种整合方式 1. 流 ...

  8. WinDbg调试.NET程序入门

    俗话说:万事开头难! 自从来到新公司遇到性能问题后,需要想办法解决这个问题,但是一直没有合适的性能分析工具,然后找到StevenChennet 大神帮忙,他用WinDbg工具远程帮我分析了一个 dum ...

  9. net user命令集合详解

    net use \\ip\ipc$ " " /user:" " 建立IPC空链接 net use \\ip\ipc$ "密码" /user: ...

  10. ArcGIS Server开发实践之【Search Widget工具查询本地地图服务】

    加载本地地图服务,并实现要素的查询.(不足之处还请指点)具体代码如下: <!DOCTYPE html> <html dir="ltr"> <head& ...