-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathado-net-and-asp-net-core.html
144 lines (134 loc) · 5.75 KB
/
ado-net-and-asp-net-core.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
<!DOCTYPE html>
<html lang="en-US" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1" />
<title>ADO.NET and ASP.NET Core</title>
<link rel="shortcut icon" href="/wwwroot/favicon.ico" />
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="language" content="en" />
<meta name="keywords" content="ADO.NET,.NET CORE,ASP.NET Core" />
<meta name="description" content="ADO.NET and ASP.NET Core" />
<meta name="author" content="Adrien Torris" />
<meta name="robots" content="index,follow" />
<meta name="generator" content="SiteUp! 0.1" />
<link rel="alternate" href="https://adrientorris.github.io/fr/aspnet-core/ado-net-et-asp-net-core.html" hreflang="fr-fr" />
<link rel="alternate" href="https://adrientorris.github.io/aspnet-core/ado-net-and-asp-net-core.html" hreflang="en-en" />
<link href="/wwwroot/css/style.css" rel="stylesheet" />
<script defer src="https://use.fontawesome.com/releases/v5.0.7/js/all.js"></script>
</head>
<body>
<div id="main_ctn" class="post_ctn">
<header>
<div id="header-content">
<h2>Blog</h2>
<ul id="social_links">
<li id="twitter_link">
<a href="https://twitter.com/AdrienTorris" target="_Blank" rel="nofollow" title="Adrien Torris sur Twitter">
<i class="fab fa-twitter fa-2x"></i>
</a>
</li>
<li id="github_link" title="Adrien Torris sur GitHub">
<a href="https://github.com/AdrienTorris" target="_Blank" rel="nofollow">
<i class="fab fa-github fa-2x"></i>
</a>
</li>
<li id="so_link">
<a href="https://stackoverflow.com/users/story/4428633" target="_Blank" rel="nofollow" title="Adrien Torris sur StackOverflow">
<i class="fab fa-stack-overflow fa-2x"></i>
</a>
</li>
<li id="linkedin_link">
<a href="https://www.linkedin.com/in/adrientorris/" target="_Blank" rel="nofollow" title="Adrien Torris sur LinkedIn">
<i class="fab fa-linkedin fa-2x"></i>
</a>
</li>
<li id="gplus_link">
<a href="https://plus.google.com/u/0/+AdrienTorris" target="_Blank" rel="nofollow" title="Adrien Torris sur Google Plus">
<i class="fab fa-google-plus-g fa-2x"></i>
</a>
</li>
</ul>
<ul id="flags_wrapper">
<li><a href="https://adrientorris.github.io/fr/aspnet-core/ado-net-et-asp-net-core.html" title=""><img src="/wwwroot/images/french.png" alt="" title="" /></a></li>
<li class="cur"><img src="/wwwroot/images/english.jpg" alt="" title="" /></li>
</ul>
</div>
</header>
<div id="arianne_wrapper">
<ul>
<li><a href="https://adrientorris.github.io/index.html" title="">Home</a></li>
<li>ASP.NET Core</li>
<li class="active"><a href="https://adrientorris.github.io/aspnet-core/ado-net-and-asp-net-core.html" title="ADO.NET and ASP.NET Core">ADO.NET and ASP.NET Core</a></li>
</ul>
</div>
<div id="post_ctn">
<h1>ADO.NET and ASP.NET Core</h1>
<p>ASP.NET Core doesn't have implementations for objects like <span class="thnclwrd">DataTable</span>, <span class="thnclwrd">DataSet</span>, or <span class="thnclwrd">SqlDataAdapter</span> anymore, so you can't use them like you always do to query a database in a ADO.NET way.</p>
<p>Fortunately, ASP.NET Core implements a lot of SQL core features like connection, command and some other stuff, so you can easily do all what you need to do with your database.</p>
<p>This is a simple example of a database querying base class implementation :</p>
<pre><code class="csharp">
public abstract class BaseDataAccess
{
protected readonly string ConnectionString;
/// <summary>
/// Default timeout value for commands
/// </summary>
private const int DefaultCommandTimeOut = 0;
public BaseDataAccess(string connectionString)
{
ConnectionString = connectionString;
}
protected SqlConnection InitConnection()
{
SqlConnection connection = new SqlConnection(ConnectionString);
if (connection.State != ConnectionState.Open)
connection.Open();
return connection;
}
protected SqlCommand InitCommand(SqlConnection connection, CommandType type, string text)
{
SqlCommand cmd = new SqlCommand(text, connection);
cmd.CommandTimeout = DefaultCommandTimeOut;
cmd.CommandType = type;
return cmd;
}
// ...
}
</code></pre>
<div id="crdny">
01/11/2016
</div>
<div id="tags_wrapper">
<ul>
<li>ASP.NET Core</li>
<li>ADO.NET</li>
</ul>
</div>
<div id="refs_wrapper">
</div>
</div>
<footer>
</footer>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js" type="text/javascript"></script>
<script src="/wwwroot/js/Infra.js" type="text/javascript"></script>
<link type="text/css" rel="stylesheet" href="/wwwroot/lib/highlight/styles/vs.css" />
<script type="text/javascript" src="/wwwroot/lib/highlight/highlight.pack.js"></script>
<script type="text/javascript">hljs.initHighlightingOnLoad();</script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-85948839-1', 'auto');
ga('send', 'pageview');
</script>
<script async src="https://www.googletagmanager.com/gtag/js?id=G-F924P8Y6HC"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-F924P8Y6HC');
</script>
</body>
</html>