<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8">
<meta name="generator" content="pdf2htmlEX">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<link rel="stylesheet" href="https://static.pudn.com/base/css/base.min.css">
<link rel="stylesheet" href="https://static.pudn.com/base/css/fancy.min.css">
<link rel="stylesheet" href="https://static.pudn.com/prod/directory_preview_static/627465ecf0a4f84830d7444d/raw.css">
<script src="https://static.pudn.com/base/js/compatibility.min.js"></script>
<script src="https://static.pudn.com/base/js/pdf2htmlEX.min.js"></script>
<script>
try{
pdf2htmlEX.defaultViewer = new pdf2htmlEX.Viewer({});
}catch(e){}
</script>
<title></title>
</head>
<body>
<div id="sidebar" style="display: none">
<div id="outline">
</div>
</div>
<div id="pf1" class="pf w0 h0" data-page-no="1"><div class="pc pc1 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/627465ecf0a4f84830d7444d/bg1.jpg"><div class="c x1 y1 w2 h2"><div class="t m0 x2 h3 y2 ff1 fs0 fc0 sc0 ls0 ws0">使用<span class="_ _0"></span>使用<span class="_ _1"></span><span class="ff2">C</span>#<span class="_ _2"></span>处理<span class="_ _3"></span>#处<span class="_ _2"></span>理<span class="_ _1"></span><span class="ff2">Azur<span class="_ _2"></span>e</span>存<span class="_ _2"></span>储表<span class="_ _3"></span>存储<span class="_ _2"></span>表<span class="_ _1"></span><span class="ff2">-</span>源码<span class="_ _0"></span>源码</div><div class="t m0 x2 h4 y3 ff1 fs1 fc0 sc0 ls0 ws0">介绍<span class="_ _4"></span>介绍</div><div class="t m0 x2 h5 y4 ff3 fs2 fc0 sc0 ls0 ws0">Azure<span class="ff1">表<span class="_ _2"></span>存储是</span>N<span class="_ _2"></span>o SQL<span class="ff1">键<span class="_ _2"></span>属性数<span class="_ _2"></span>据存储。<span class="_ _1"></span></span> <span class="ff1">这有助于存储<span class="_ _2"></span>大量不具<span class="_ _2"></span>有复杂<span class="_ _2"></span>关系且无<span class="_ _2"></span>模式的<span class="_ _2"></span>结构化数<span class="_ _2"></span>据(以<span class="_ _2"></span></span>TB<span class="ff1">为单<span class="_ _2"></span>位)。<span class="_ _2"></span></span> <span class="ff1">存储</span></div><div class="t m0 x2 h5 y5 ff1 fs2 fc0 sc0 ls0 ws0">的数据是<span class="_ _2"></span>持久的<span class="_ _2"></span>,高度可<span class="_ _2"></span>伸缩的<span class="_ _2"></span>,并且可<span class="_ _2"></span>以快速<span class="_ _2"></span>检索。<span class="ff3"> </span>本<span class="_ _2"></span>文演示<span class="_ _2"></span>如何创建<span class="_ _2"></span>新的<span class="ff3">Az<span class="_ _2"></span>ure</span>存储<span class="_ _2"></span>表,如何<span class="_ _2"></span>在表上<span class="_ _2"></span>执行<span class="ff3">CR<span class="_ _2"></span>UD</span>操作</div><div class="t m0 x2 h5 y6 ff1 fs2 fc0 sc0 ls0 ws0">(读取,<span class="_ _2"></span>插入,<span class="_ _2"></span>更新和删<span class="_ _2"></span>除数据<span class="_ _2"></span>)以及删<span class="_ _2"></span>除使用<span class="_ _2"></span><span class="ff3">C</span>#编程<span class="_ _2"></span>创建的<span class="_ _2"></span>表。</div><div class="t m0 x2 h4 y7 ff1 fs1 fc0 sc0 ls0 ws0">背景<span class="_ _4"></span>背景</div><div class="t m0 x2 h5 y8 ff1 fs2 fc0 sc0 ls0 ws0">表存储数<span class="_ _2"></span>据存储<span class="_ _2"></span>在跨多个<span class="_ _2"></span>存储节<span class="_ _2"></span>点的分区<span class="_ _2"></span>中。<span class="ff3"> </span>存<span class="_ _2"></span>储的每个<span class="_ _2"></span>数据实<span class="_ _2"></span>体都有一<span class="_ _2"></span>个<span class="ff3">Row<span class="_ _2"></span></span>键,一个<span class="_ _2"></span>分区键<span class="_ _2"></span>和与其关<span class="_ _2"></span>联的时<span class="_ _2"></span>间戳。<span class="_ _2"></span><span class="ff3"> </span>每个</div><div class="t m0 x2 h5 y9 ff1 fs2 fc0 sc0 ls0 ws0">分区由分<span class="_ _2"></span>区键标<span class="_ _2"></span>识。<span class="ff3"> </span>在分<span class="_ _2"></span>区中,<span class="_ _2"></span>每个数据<span class="_ _2"></span>实体都<span class="_ _2"></span>与行键相<span class="_ _2"></span>关联。<span class="_ _2"></span><span class="ff3"> </span>分区键和<span class="_ _2"></span>行键的组<span class="_ _2"></span>合唯一<span class="_ _2"></span>标识一个<span class="_ _2"></span>数据实<span class="_ _2"></span>体。<span class="ff3"> </span>与数<span class="_ _2"></span>据实体<span class="_ _2"></span>关</div><div class="t m0 x2 h5 ya ff1 fs2 fc0 sc0 ls0 ws0">联的时间<span class="_ _2"></span>戳跟踪<span class="_ _2"></span>该数据实<span class="_ _2"></span>体上次<span class="_ _2"></span>修改的时<span class="_ _2"></span>间。<span class="ff3"> </span>开<span class="_ _2"></span>发人员可<span class="_ _2"></span>以修改<span class="_ _2"></span>行键和分<span class="_ _2"></span>区键。<span class="_ _2"></span><span class="ff3"> </span>时间戳由<span class="_ _2"></span>服务器管<span class="_ _2"></span>理,开<span class="_ _2"></span>发人员无<span class="_ _2"></span>法修改<span class="_ _2"></span>。</div><div class="t m0 x2 h4 yb ff1 fs1 fc0 sc0 ls0 ws0">使用代<span class="_ _2"></span>码<span class="_ _3"></span>使用<span class="_ _2"></span>代码</div><div class="t m0 x2 h5 yc ff1 fs2 fc0 sc0 ls0 ws0">使用<span class="ff3">Visu<span class="_ _2"></span>al Stud<span class="_ _2"></span>io 2015<span class="_ _2"></span></span>创建控制<span class="_ _2"></span>台应用<span class="_ _2"></span>程序以演<span class="_ _2"></span>示本文<span class="_ _2"></span>中的表存<span class="_ _2"></span>储操作<span class="_ _2"></span>。<span class="ff3"> Win<span class="_ _2"></span>dows A<span class="_ _2"></span>zure Sto<span class="_ _2"></span>rage SD<span class="_ _2"></span>K</span>从<span class="ff3">Nu<span class="_ _2"></span>get</span></div><div class="t m0 x2 h5 yd ff3 fs2 fc0 sc0 ls0 ws0">Packag<span class="_ _2"></span>e Mana<span class="_ _2"></span>ger<span class="ff1">安装<span class="_ _2"></span>在控制台<span class="_ _2"></span>应用程<span class="_ _2"></span>序中</span></div><div class="t m0 x2 h6 ye ff1 fs3 fc0 sc0 ls0 ws0">创建客<span class="_ _2"></span>户实体<span class="_ _5"></span>创建客<span class="_ _2"></span>户实体</div><div class="t m0 x2 h5 yf ff1 fs2 fc0 sc0 ls0 ws0">数据实体<span class="_ _2"></span>类<span class="ff3">Cust<span class="_ _2"></span>omer</span>已<span class="_ _2"></span>创建。<span class="_ _2"></span><span class="ff3"> </span>该实<span class="_ _2"></span>体数据<span class="_ _2"></span>将保存到<span class="_ _2"></span>表存储<span class="_ _2"></span>中。<span class="ff3"> <span class="fs4">Custo<span class="_ _2"></span>mer</span></span>类派生</div><div class="t m0 x2 h5 y10 ff1 fs2 fc0 sc0 ls0 ws0">自<span class="ff2 fs4">Micros<span class="_ _2"></span>oft.Wind<span class="_ _2"></span>owsAzu<span class="_ _2"></span>re.Stora<span class="_ _2"></span>ge.Table<span class="_ _2"></span></span>命名<span class="_ _2"></span>空间中<span class="_ _2"></span>的<span class="ff2 fs4">Table<span class="_ _2"></span>Entity<span class="_ _2"></span></span>类。<span class="_ _2"></span><span class="ff3"> </span>表存储中<span class="_ _2"></span>的每个<span class="_ _2"></span>实体数据<span class="_ _2"></span>都必须<span class="_ _2"></span>与分区键<span class="_ _2"></span>和行键<span class="_ _2"></span>关</div><div class="t m0 x2 h5 y11 ff1 fs2 fc0 sc0 ls0 ws0">联。<span class="ff3"> <span class="ff2 fs4">Assi<span class="_ _2"></span>gnPartit<span class="_ _2"></span>ionKey</span></span>方<span class="_ _2"></span>法将客户<span class="_ _2"></span>类型分<span class="_ _2"></span>配为分区<span class="_ _2"></span>键,而<span class="_ _2"></span><span class="ff2 fs4">AssignR<span class="_ _2"></span>owKey<span class="_ _2"></span></span>方法将<span class="_ _2"></span>客户<span class="ff3">ID</span>分<span class="_ _2"></span>配为行<span class="_ _2"></span>键。</div><div class="t m0 x2 h5 y12 ff3 fs2 fc0 sc0 ls0 ws0">C<span class="ff1">#</span></div><div class="t m0 x2 h7 y13 ff3 fs4 fc0 sc0 ls0 ws0">class Custome<span class="_ _2"></span>r:TableEnt<span class="_ _2"></span>ity</div><div class="t m0 x2 h7 y14 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y15 ff3 fs4 fc0 sc0 ls0 ws0"> pr<span class="_ _2"></span>ivate int c<span class="_ _2"></span>ustomerI<span class="_ _2"></span>D;</div><div class="t m0 x2 h7 y16 ff3 fs4 fc0 sc0 ls0 ws0"> pr<span class="_ _2"></span>ivate string custo<span class="_ _2"></span>merName<span class="_ _2"></span>;</div><div class="t m0 x2 h7 y17 ff3 fs4 fc0 sc0 ls0 ws0"> pr<span class="_ _2"></span>ivate string custo<span class="_ _2"></span>merDetai<span class="_ _2"></span>ls;</div><div class="t m0 x2 h7 y18 ff3 fs4 fc0 sc0 ls0 ws0"> pr<span class="_ _2"></span>ivate string custo<span class="_ _2"></span>merType<span class="_ _2"></span>;</div><div class="t m0 x2 h7 y19 ff3 fs4 fc0 sc0 ls0 ws0"> pu<span class="_ _2"></span>blic void<span class="_ _2"></span> Assi<span class="_ _2"></span>gnRowKe<span class="_ _2"></span>y()</div><div class="t m0 x2 h7 y1a ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y1b ff3 fs4 fc0 sc0 ls0 ws0"> this <span class="_ _2"></span>.RowKey <span class="_ _2"></span>= custom<span class="_ _2"></span>erID.ToSt<span class="_ _2"></span>ring();</div><div class="t m0 x2 h7 y1c ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y1d ff3 fs4 fc0 sc0 ls0 ws0"> pu<span class="_ _2"></span>blic void<span class="_ _2"></span> Assi<span class="_ _2"></span>gnPartitio<span class="_ _2"></span>nKey()</div><div class="t m0 x2 h7 y1e ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y1f ff3 fs4 fc0 sc0 ls0 ws0"> this <span class="_ _2"></span>.PartitionK<span class="_ _2"></span>ey = cus<span class="_ _2"></span>tomerTyp<span class="_ _2"></span>e;</div><div class="t m0 x2 h7 y20 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y21 ff3 fs4 fc0 sc0 ls0 ws0"> pu<span class="_ _2"></span>blic int Custo<span class="_ _2"></span>merID</div><div class="t m0 x2 h7 y22 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y23 ff3 fs4 fc0 sc0 ls0 ws0"> get</div><div class="t m0 x2 h7 y24 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y25 ff3 fs4 fc0 sc0 ls0 ws0"> <span class="_ _2"></span> return custo<span class="_ _2"></span>merID;</div><div class="t m0 x2 h7 y26 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y27 ff3 fs4 fc0 sc0 ls0 ws0"> set</div><div class="t m0 x2 h7 y28 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y29 ff3 fs4 fc0 sc0 ls0 ws0"> <span class="_ _2"></span> customer<span class="_ _2"></span>ID = value ;</div><div class="t m0 x2 h7 y2a ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y2b ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y2c ff3 fs4 fc0 sc0 ls0 ws0"> pu<span class="_ _2"></span>blic string Customer<span class="_ _2"></span>Name</div><div class="t m0 x2 h7 y2d ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y2e ff3 fs4 fc0 sc0 ls0 ws0"> get</div><div class="t m0 x2 h7 y2f ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y30 ff3 fs4 fc0 sc0 ls0 ws0"> <span class="_ _2"></span> return custo<span class="_ _2"></span>merNam<span class="_ _2"></span>e;</div><div class="t m0 x2 h7 y31 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y32 ff3 fs4 fc0 sc0 ls0 ws0"> set</div><div class="t m0 x2 h7 y33 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y34 ff3 fs4 fc0 sc0 ls0 ws0"> <span class="_ _2"></span> customer<span class="_ _2"></span>Name = <span class="_ _6"></span>value ;</div><div class="t m0 x2 h7 y35 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y36 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y37 ff3 fs4 fc0 sc0 ls0 ws0"> pu<span class="_ _2"></span>blic string Customer<span class="_ _2"></span>Details</div><div class="t m0 x2 h7 y38 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y39 ff3 fs4 fc0 sc0 ls0 ws0"> get</div><div class="t m0 x2 h7 y3a ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y3b ff3 fs4 fc0 sc0 ls0 ws0"> <span class="_ _2"></span> return custo<span class="_ _2"></span>merDeta<span class="_ _2"></span>ils;</div></div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
</body>
</html>