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. C# Graphics绘图 picBox

    需求: Bitmap bm = new Bitmap(picboxPreview.Width, picboxPreview.Height); using (Graphics g = Graphics. ...

  2. 介绍开源的.net通信框架NetworkComms框架 源码分析(六)SendReceiveOptions

    原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架  作者是英国人  以前是收费的 目前作者已经开源  许可是 ...

  3. vs2012运行项目报未能加载文件或程序集“System.Web.Mvc, Version=4.0.0.1,Culture=neutral”问题和解决方法

    原先本地项目版本(4.0.0.1)高于服务器版本(4.0.0.0),本地项目改成服务器版本4.0.0.0时,发布后的项目报这个错误

  4. 不可或缺 Windows Native (20) - C++: 友元函数, 友元类

    [源码下载] 不可或缺 Windows Native (20) - C++: 友元函数, 友元类 作者:webabcd 介绍不可或缺 Windows Native 之 C++ 友元函数 友元类 示例演 ...

  5. hibernate 注释说明

    * @Entity -- 将一个类声明为一个实体 bean(即一个持久化 POJO 类) * @Id -- 注解声明了该实体 bean 的标识属性(对应表中的主 键). * @Table -- 注解声 ...

  6. 在linux中连接wifi

    分为以下步骤:-----------(键入以下命令的时候注意大小写与空格.) 1. 进入终端treminal 获取管理员权限---------------------- su 命令(# su) 2. ...

  7. Mybatis批量添加对象List

    1.对应的xml文件: <!--批量添加--><insert id="insertStandardItemInfo" parameterType="ha ...

  8. Spring中的通知(Advice)和顾问(Advisor)

    在Spring中,目前我学习了几种增强的方式,和大家分享一下 之前的话: 1.AOP  (Aspect  Oriented Programming  面向切面编程) 在软件业,AOP为Aspect O ...

  9. jQuery中的事件与动画 (你的明天Via Via)

    众所周知,页面在加载时,会触发load事件:当用户单击某个按钮时,会触发该按钮的click事件. 这些事件就像日常生活中,人们按下开关,灯就亮了(或者灭了),往游戏机里投入游戏币就可以启动游戏一样, ...

  10. JS中取整以及随机颜色问题

    前言:感觉自己已经好久好久没有写博客了,最近都是在写在线笔记比较多.现在来到新公司了,昨天刚刚完成一个项目所以今天有空研究研究一下前端方面的技术.下午在看一个游戏代码的时候,发现了几个别人留下的不错的 ...