<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/6259c4d592dc900e62c45cf9/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/6259c4d592dc900e62c45cf9/bg1.jpg"><div class="c x1 y1 w2 h2"><div class="t m0 x2 h3 y2 ff1 fs0 fc0 sc0 ls0 ws0">ASP<span class="_ _0"></span> MV<span class="_ _0"></span>C5<span class="ff2">和<span class="_ _1"></span>和<span class="_ _2"></span><span class="ff1">Azu<span class="_ _0"></span>re</span>表<span class="_ _0"></span>存储<span class="_ _0"></span>脚手<span class="_ _0"></span>架<span class="_ _3"></span>表存<span class="_ _0"></span>储脚<span class="_ _0"></span>手架</span></div><div class="t m0 x2 h4 y3 ff2 fs1 fc0 sc0 ls0 ws0">介绍<span class="_ _4"></span>介绍</div><div class="t m0 x2 h5 y4 ff2 fs2 fc0 sc0 ls0 ws0">只要使用<span class="_ _0"></span><span class="ff3">Microsof<span class="_ _0"></span>t SQL Serv<span class="_ _0"></span>er</span>,就可<span class="_ _0"></span>以轻松使<span class="_ _0"></span>用<span class="ff3">Microso<span class="_ _0"></span>ft ASP.NE<span class="_ _0"></span>T MVC</span>通<span class="_ _0"></span>过诸如<span class="ff3">Sc<span class="_ _0"></span>affolding</span>之<span class="_ _0"></span>类的技术<span class="_ _0"></span>来构建功<span class="_ _0"></span>能性业务</div><div class="t m0 x2 h5 y5 ff2 fs2 fc0 sc0 ls0 ws0">系统。<span class="ff3"> </span>我发现说<span class="_ _0"></span>服业务用<span class="_ _0"></span>户切换到<span class="_ _0"></span><span class="ff3">Microsof<span class="_ _0"></span>t Azure</span>表存<span class="_ _0"></span>储是一个<span class="_ _0"></span>无法克服<span class="_ _0"></span>的遭遇<span class="_ _0"></span>,尤其是<span class="_ _0"></span>当他们听<span class="_ _0"></span>说开发需<span class="_ _0"></span>要更长的<span class="_ _0"></span>时间</div><div class="t m0 x2 h5 y6 ff2 fs2 fc0 sc0 ls0 ws0">时。</div><div class="t m0 x2 h5 y7 ff2 fs2 fc0 sc0 ls0 ws0">使用<span class="ff3">Mic<span class="_ _0"></span>rosoft Visu<span class="_ _0"></span>al Studio 2<span class="_ _0"></span>013 Updat<span class="_ _0"></span>e 2</span>,<span class="ff3">Micro<span class="_ _0"></span>soft</span>启用了<span class="_ _0"></span><span class="ff3">MVC</span>脚手<span class="_ _0"></span>架<span class="fc1">扩展</span>,从<span class="_ _0"></span>而使开发<span class="_ _0"></span>人员能够<span class="_ _0"></span>扩展脚手<span class="_ _0"></span>架系统的<span class="_ _0"></span>行</div><div class="t m0 x2 h5 y8 ff2 fs2 fc0 sc0 ls0 ws0">为。</div><div class="t m0 x2 h5 y9 ff2 fs2 fc0 sc0 ls0 ws0">我已经使<span class="_ _0"></span>用这些方<span class="_ _0"></span>法来开发<span class="_ _0"></span>一个脚手<span class="_ _0"></span>架,该<span class="_ _0"></span>脚手架可<span class="_ _0"></span>以为<span class="ff3">Micro<span class="_ _0"></span>soft Azure<span class="_ _0"></span> Table Sto<span class="_ _0"></span>rage</span>实体生<span class="_ _0"></span>成控制器<span class="_ _0"></span>和视图。</div><div class="t m0 x2 h5 ya ff3 fs2 fc1 sc0 ls0 ws0">GitHub<span class="ff2">上<span class="_ _0"></span>的<span class="fc0">源<span class="_ _0"></span>代码</span></span></div><div class="t m0 x2 h4 yb ff2 fs1 fc0 sc0 ls0 ws0">安装<span class="_ _4"></span>安装<span class="_ _2"></span><span class="ff1">Visual <span class="_ _0"></span>Studio<span class="_ _0"></span></span>扩展<span class="_ _4"></span>扩展</div><div class="t m0 x2 h5 yc ff2 fs2 fc0 sc0 ls0 ws0">从<span class="ff3 fc1">Visual<span class="_ _0"></span> Studio<span class="ff2">画廊</span></span>下载<span class="_ _0"></span><span class="ff1">Azure Ta<span class="_ _0"></span>ble Storag<span class="_ _0"></span>e Scaffold<span class="_ _0"></span>er<span class="_ _5"></span><span class="ff2">扩展。<span class="ff3"> </span>在<span class="ff3">Visual <span class="_ _0"></span>Studio 201<span class="_ _0"></span>3</span>中,打开<span class="_ _0"></span><span class="ff3">“</span></span></span></div><div class="t m1 x3 h6 yc ff2 fs3 fc0 sc0 ls0 ws0">工具</div><div class="t m0 x4 h5 yc ff4 fs2 fc0 sc0 ls0 ws0">”<span class="ff3"> <span class="ff2">,然后单击</span>“</span></div><div class="t m1 x5 h6 yc ff2 fs3 fc0 sc0 ls0 ws0">扩展和更</div><div class="t m1 x2 h6 yd ff2 fs3 fc0 sc0 ls0 ws0">新</div><div class="t m0 x6 h5 yd ff4 fs2 fc0 sc0 ls0 ws0">”<span class="ff2">菜单项。</span></div><div class="t m0 x2 h5 ye ff2 fs2 fc0 sc0 ls0 ws0">下载扩展<span class="_ _0"></span>程序后,<span class="_ _0"></span>请按照以<span class="_ _0"></span>下步骤将<span class="_ _0"></span>其安装<span class="_ _0"></span>到<span class="ff3">Visual S<span class="_ _0"></span>tudio 2013<span class="_ _0"></span></span>副本中。</div></div><a class="l" rel='nofollow' onclick='return false;'><div class="d m2"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m2"></div></a><a class="l" rel='nofollow' onclick='return false;'><div class="d m2"></div></a></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
</body>
</html>
<div id="pf2" class="pf w0 h0" data-page-no="2"><div class="pc pc2 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6259c4d592dc900e62c45cf9/bg2.jpg"><div class="c x1 y1 w2 h2"><div class="t m0 x2 h5 yf ff2 fs2 fc0 sc0 ls0 ws0">完成此步<span class="_ _0"></span>骤后,该<span class="_ _0"></span>扩展将可<span class="_ _0"></span>从任何<span class="ff3">A<span class="_ _0"></span>SP.NET <span class="_ _0"></span>MVC</span>项目<span class="_ _0"></span>中使用。</div><div class="t m0 x2 h4 y10 ff2 fs1 fc0 sc0 ls0 ws0">创建一<span class="_ _0"></span>个新<span class="_ _0"></span>的<span class="_ _6"></span>创建一<span class="_ _0"></span>个新<span class="_ _0"></span>的<span class="_ _0"></span><span class="ff1">M<span class="_ _0"></span>VC</span>项<span class="_ _0"></span>目<span class="_ _4"></span>项目</div><div class="t m0 x2 h5 y11 ff2 fs2 fc0 sc0 ls0 ws0">若要开始<span class="_ _0"></span>搭建<span class="ff3">Azu<span class="_ _0"></span>re Table S<span class="_ _0"></span>torage</span>实体<span class="_ _0"></span>,<span class="_ _7"></span>请<span class="_ _8"></span>请<span class="_ _0"></span>在<span class="ff3">Vis<span class="_ _0"></span>ual Studio 2<span class="_ _0"></span>013</span>中创建<span class="_ _0"></span>一个新的<span class="ff1">ASP<span class="_ _0"></span>.NET We<span class="_ _0"></span>b</span>应用程序<span class="_ _9"></span>应用程序<span class="_ _0"></span>。</div><div class="t m0 x2 h5 y12 ff2 fs2 fc0 sc0 ls0 ws0">在<span class="ff3">ASP.N<span class="_ _0"></span>ET One P<span class="_ _0"></span>roject</span>向导<span class="_ _0"></span>上,选择<span class="_ _5"></span><span class="ff1">MV<span class="_ _0"></span>C<span class="_ _0"></span><span class="ff2">模板,然<span class="_ _0"></span>后选择<span class="_ _0"></span></span>MVC<span class="_ _0"></span><span class="ff2">和</span>We<span class="_ _0"></span>b API<span class="ff2">核<span class="_ _0"></span>心引用。</span></span></div><div class="t m0 x2 h5 y13 ff2 fs2 fc0 sc0 ls0 ws0">创建项目<span class="_ _0"></span>后,使用<span class="_ _0"></span>程序包管<span class="_ _0"></span>理器控制<span class="_ _0"></span>台安装<span class="_ _0"></span>以下<span class="ff3">NuG<span class="_ _0"></span>et</span>程序包。</div><div class="t m0 x2 h7 y14 ff3 fs4 fc0 sc0 ls0 ws0">install-pack<span class="_ _0"></span>age Windows<span class="_ _0"></span>Azure.Storag<span class="_ _0"></span>e</div><div class="t m0 x2 h7 y15 ff3 fs4 fc0 sc0 ls0 ws0">install-pack<span class="_ _0"></span>age BlueMarb<span class="_ _0"></span>le.Shared</div><div class="t m0 x2 h7 y16 ff3 fs4 fc0 sc0 ls0 ws0">install-pack<span class="_ _0"></span>age BlueMarb<span class="_ _0"></span>le.Shared.Azu<span class="_ _0"></span>re</div></div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>
<div id="pf3" class="pf w0 h0" data-page-no="3"><div class="pc pc3 w0 h0"><img class="bi x0 y0 w1 h1" alt="" src="https://static.pudn.com/prod/directory_preview_static/6259c4d592dc900e62c45cf9/bg3.jpg"><div class="c x1 y1 w2 h2"><div class="t m0 x2 h7 y17 ff3 fs4 fc0 sc0 ls0 ws0">install-pack<span class="_ _0"></span>age KendoUIW<span class="_ _0"></span>eb</div><div class="t m0 x2 h4 y18 ff2 fs1 fc0 sc0 ls0 ws0">新增模<span class="_ _0"></span>型<span class="_ _a"></span>新增模<span class="_ _0"></span>型</div><div class="t m0 x2 h5 y19 ff2 fs2 fc0 sc0 ls0 ws0">接下来,<span class="_ _0"></span>我们可以<span class="_ _0"></span>添加几个<span class="_ _0"></span>我们希望<span class="_ _0"></span>为控制<span class="_ _0"></span>器和视图<span class="_ _0"></span>提供支持<span class="_ _0"></span>的模型。<span class="_ _0"></span><span class="ff3"> <span class="_ _7"></span><span class="ff2">对于此示<span class="_ _0"></span>例,我<span class="_ _0"></span>们将做一<span class="_ _0"></span>个简单的<span class="_ _0"></span>书<span class="ff3">+</span>作者示<span class="_ _0"></span>例。<span class="ff3"> <span class="_ _7"></span><span class="ff2">我</span></span></span></span></div><div class="t m0 x2 h5 y1a ff2 fs2 fc0 sc0 ls0 ws0">们将有两<span class="_ _0"></span>个表,一<span class="_ _0"></span>个表列出<span class="_ _0"></span><span class="ff3">buthors</span>,<span class="_ _0"></span>一个表列<span class="_ _0"></span>出<span class="ff3">books<span class="_ _0"></span></span>。<span class="ff3"> </span>每本书必须有<span class="_ _0"></span>一位作者<span class="_ _0"></span>。</div><div class="t m0 x2 h5 y1b ff2 fs2 fc0 sc0 ls0 ws0">作者实体<span class="_ _0"></span>只有一个<span class="_ _0"></span>属性,即<span class="_ _0"></span>作者姓名<span class="_ _0"></span>。</div><div class="t m0 x2 h5 y1c ff3 fs2 fc0 sc0 ls0 ws0">C<span class="ff2">#</span></div><div class="t m0 x2 h7 y1d ff3 fs4 fc0 sc0 ls0 ws0"> p<span class="_ _0"></span>ublic <span class="_ _0"></span>class<span class="_ _0"></span> Auth<span class="_ _0"></span>or : BlueMarb<span class="_ _0"></span>le.Shared.Azu<span class="_ _0"></span>re.Storage.Ta<span class="_ _0"></span>ble.Entity</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"> public Author() : base () { }</div><div class="t m0 x2 h7 y20 ff3 fs4 fc0 sc0 ls0 ws0"> public Author( <span class="_ _0"></span>string<span class="_ _0"></span> publicId) : <span class="_ _0"></span>bas<span class="_ _0"></span>e (publicId) { }</div><div class="t m0 x2 h7 y21 ff3 fs4 fc0 sc0 ls0 ws0"> public st<span class="_ _0"></span>ring Na<span class="_ _0"></span>me { ge<span class="_ _0"></span>t ; set ; }</div><div class="t m0 x2 h7 y22 ff3 fs4 fc0 sc0 ls0 ws0">}</div><div class="t m0 x2 h5 y23 ff2 fs2 fc0 sc0 ls0 ws0">图书实体<span class="_ _0"></span>具有两个<span class="_ _0"></span>属性,即<span class="_ _0"></span>图书名称<span class="_ _0"></span>和对作<span class="_ _0"></span>者实体的<span class="_ _0"></span>引用。</div><div class="t m0 x2 h5 y24 ff3 fs2 fc0 sc0 ls0 ws0">C<span class="ff2">#</span></div><div class="t m0 x2 h7 y25 ff3 fs4 fc0 sc0 ls0 ws0"> p<span class="_ _0"></span>ublic <span class="_ _0"></span>class<span class="_ _0"></span> Book<span class="_ _0"></span> : BlueMarble<span class="_ _0"></span>.Shared.Azur<span class="_ _0"></span>e.Storage.Tab<span class="_ _0"></span>le.Entity</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"> public Book() : <span class="_ _0"></span>base () { }</div><div class="t m0 x2 h7 y28 ff3 fs4 fc0 sc0 ls0 ws0"> public Book( string<span class="_ _0"></span> publicId) :<span class="_ _0"></span> <span class="_ _0"></span>base (publicId) { }</div><div class="t m0 x2 h7 y29 ff3 fs4 fc0 sc0 ls0 ws0"> public st<span class="_ _0"></span>ring Na<span class="_ _0"></span>me { ge<span class="_ _0"></span>t ; set ; }</div><div class="t m0 x2 h7 y2a ff3 fs4 fc0 sc0 ls0 ws0"> [RelatedT<span class="_ _0"></span>able(Type = typeof (WebAppli<span class="_ _0"></span>cation18.Mode<span class="_ _0"></span>ls.Author))]</div><div class="t m0 x2 h7 y2b ff3 fs4 fc0 sc0 ls0 ws0"> public st<span class="_ _0"></span>ring Au<span class="_ _0"></span>thorPublicId { <span class="_ _0"></span>ge<span class="_ _0"></span>t ; set ; }</div><div class="t m0 x2 h7 y2c ff3 fs4 fc0 sc0 ls0 ws0">}</div><div class="t m0 x2 h5 y2d ff2 fs2 fc0 sc0 ls0 ws0">在书籍实<span class="_ _0"></span>体中,对<span class="_ _0"></span>作者实体<span class="_ _0"></span>的引用由<span class="_ _0"></span>字段上<span class="_ _0"></span>方的<span class="ff3">Rela<span class="_ _0"></span>tedTable</span>属<span class="_ _0"></span>性确定。<span class="ff3"> </span>该字段必<span class="_ _0"></span>须是字符<span class="_ _0"></span>串,因为<span class="_ _0"></span>它将存储<span class="_ _0"></span>作者表的</div><div class="t m0 x2 h5 y2e ff3 fs2 fc0 sc0 ls0 ws0">PublicId<span class="ff2">值<span class="_ _0"></span>。</span> PublicId<span class="ff2">由实<span class="_ _0"></span>体内部生<span class="_ _0"></span>成,并且<span class="_ _0"></span>是</span>Partiti<span class="_ _0"></span>onKey<span class="ff2">和</span>R<span class="_ _0"></span>owKey<span class="ff2">结<span class="_ _0"></span>合使用</span>Ba<span class="_ _0"></span>se64<span class="ff2">编码<span class="_ _0"></span>而成的。</span></div><div class="t m0 x2 h5 y2f ff2 fs2 fc0 sc0 ls0 ws0">优良作法<span class="_ _0"></span>是使用<span class="ff3">P<span class="_ _0"></span>ublicId</span>后缀<span class="_ _0"></span>任何相<span class="_ _0"></span>关字段名<span class="_ _0"></span>称,以便<span class="_ _0"></span>您可以标<span class="_ _0"></span>识将存储<span class="_ _0"></span>在任何给<span class="_ _0"></span>定列中的<span class="_ _0"></span>数据。</div><div class="t m0 x2 h4 y30 ff2 fs1 fc0 sc0 ls0 ws0">添加存<span class="_ _0"></span>储上<span class="_ _0"></span>下文<span class="_ _b"></span>添加存<span class="_ _0"></span>储上<span class="_ _0"></span>下文</div><div class="t m0 x2 h5 y31 ff2 fs2 fc0 sc0 ls0 ws0">与实体框<span class="_ _0"></span>架中可用<span class="_ _0"></span>的<span class="ff3">DataC<span class="_ _0"></span>ontext</span>组件<span class="_ _0"></span>非常相似<span class="_ _0"></span>,您必须<span class="_ _0"></span>为脚手架<span class="_ _0"></span>提供一<span class="_ _0"></span>个<span class="ff3">Storage<span class="_ _0"></span>Context</span>。<span class="_ _0"></span><span class="ff3"> <span class="_ _7"></span>Storage<span class="_ _0"></span>Context<span class="ff2">是<span class="_ _0"></span>一个继承<span class="_ _0"></span>自</span></span></div><div class="t m0 x2 h5 y32 ff3 fs2 fc0 sc0 ls0 ws0">BlueMarb<span class="_ _0"></span>le.Shared<span class="_ _0"></span>.Azure.Sto<span class="_ _0"></span>rage.Table<span class="_ _0"></span>.StorageCo<span class="_ _0"></span>ntext<span class="ff2">的类<span class="_ _0"></span>,它使脚<span class="_ _0"></span>手架可以<span class="_ _0"></span>使用所需<span class="_ _0"></span>的表属性<span class="_ _0"></span>和方法扩<span class="_ _0"></span>展脚手架<span class="_ _0"></span>。</span> <span class="_ _5"></span><span class="ff2">这<span class="_ _0"></span>是</span></div><div class="t m0 x2 h5 y33 ff2 fs2 fc0 sc0 ls0 ws0">通过为每<span class="_ _0"></span>个实体创<span class="_ _0"></span>建局部类<span class="_ _0"></span>来完成的<span class="_ _0"></span>。</div><div class="t m0 x2 h5 y34 ff3 fs2 fc0 sc0 ls0 ws0">C<span class="ff2">#</span></div><div class="t m0 x2 h7 y35 ff3 fs4 fc0 sc0 ls0 ws0"> p<span class="_ _0"></span>ublic <span class="_ _0"></span>partial c<span class="_ _0"></span>lass<span class="_ _0"></span> StorageCo<span class="_ _0"></span>ntext : BlueM<span class="_ _0"></span>arble.Shared.A<span class="_ _0"></span>zure.Storage<span class="_ _0"></span>.Table.Storage<span class="_ _0"></span>Context</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"> public StorageCont<span class="_ _0"></span>ext(Microsof<span class="_ _0"></span>t.WindowsAz<span class="_ _0"></span>ure.Storage.C<span class="_ _0"></span>loudStorageA<span class="_ _0"></span>ccount Storag<span class="_ _0"></span>eAccount)</div><div class="t m0 x2 h7 y38 ff3 fs4 fc0 sc0 ls0 ws0"> : base (Storag<span class="_ _0"></span>eAccount)</div><div class="t m0 x2 h7 y39 ff3 fs4 fc0 sc0 ls0 ws0"> {</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"> public StorageCont<span class="_ _0"></span>ext()</div><div class="t m0 x2 h7 y3c ff3 fs4 fc0 sc0 ls0 ws0"> : base ( <span class="_ _0"></span>new<span class="_ _0"></span> Microsoft.<span class="_ _0"></span>WindowsAzu<span class="_ _0"></span>re.Storage.Cl<span class="_ _0"></span>oudStorageAc<span class="_ _0"></span>count(</div><div class="t m0 x2 h7 y3d ff3 fs4 fc0 sc0 ls0 ws0"> new Mic<span class="_ _0"></span>rosoft.Windo<span class="_ _0"></span>wsAzure.Sto<span class="_ _0"></span>rage.Auth.Stor<span class="_ _0"></span>ageCredentia<span class="_ _0"></span>ls(</div><div class="t m0 x2 h7 y3e ff3 fs4 fc0 sc0 ls0 ws0"> Pr<span class="_ _0"></span>operties.Settin<span class="_ _0"></span>gs.Default.Sto<span class="_ _0"></span>rageAccountN<span class="_ _0"></span>ame,</div><div class="t m0 x2 h7 y3f ff3 fs4 fc0 sc0 ls0 ws0"> Pr<span class="_ _0"></span>operties.Settin<span class="_ _0"></span>gs.Default.Sto<span class="_ _0"></span>rageAccountK<span class="_ _0"></span>ey), true ))</div><div class="t m0 x2 h7 y40 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y41 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y42 ff3 fs4 fc0 sc0 ls0 ws0"> public ov<span class="_ _0"></span>erride <span class="_ _0"></span>void<span class="_ _0"></span> InitializeTa<span class="_ _0"></span>bles()</div><div class="t m0 x2 h7 y43 ff3 fs4 fc0 sc0 ls0 ws0"> {</div><div class="t m0 x2 h7 y44 ff3 fs4 fc0 sc0 ls0 ws0"> bas<span class="_ _0"></span>e .InitializeTables(<span class="_ _0"></span>);</div><div class="t m0 x2 h7 y45 ff3 fs4 fc0 sc0 ls0 ws0"> }</div><div class="t m0 x2 h7 y46 ff3 fs4 fc0 sc0 ls0 ws0">}</div><div class="t m0 x2 h5 y47 ff2 fs2 fc0 sc0 ls0 ws0">因为存储<span class="_ _0"></span>上下文的<span class="_ _0"></span>支架依赖<span class="_ _0"></span>于部分类<span class="_ _0"></span>,所以<span class="_ _0"></span>您创建的<span class="_ _0"></span><span class="ff3">StorageCo<span class="_ _0"></span>ntext</span>必须<span class="_ _0"></span>是部分类<span class="_ _0"></span>。<span class="ff3"> <span class="_ _7"></span><span class="ff2">您需要<span class="_ _0"></span>实现两个<span class="_ _0"></span>构造函数<span class="_ _0"></span>和一个方<span class="_ _0"></span>法</span></span></div><div class="t m0 x2 h5 y48 ff2 fs2 fc0 sc0 ls0 ws0">(<span class="ff3">Initializ<span class="_ _0"></span>eTables</span>)<span class="_ _0"></span>。<span class="ff3"> </span>构造函数<span class="_ _0"></span>使您的代<span class="_ _0"></span>码可以轻<span class="_ _0"></span>松创建绑<span class="_ _0"></span>定到不同<span class="_ _0"></span>存储帐户<span class="_ _0"></span>的存储<span class="_ _0"></span>上下文。</div><div class="t m0 x2 h5 y49 ff2 fs2 fc0 sc0 ls0 ws0">您还需要<span class="_ _0"></span>为<span class="ff1">Stora<span class="_ _0"></span>geAccoun<span class="_ _0"></span>tName</span>和<span class="_ _0"></span><span class="ff1">StorageA<span class="_ _0"></span>ccountKe<span class="_ _0"></span>y</span>创建<span class="_ _0"></span>两个应用<span class="_ _0"></span>程序属性<span class="_ _0"></span>。<span class="ff3"> </span>这可以在<span class="ff3">“</span>项目属性<span class="_ _1"></span>属<span class="_ _0"></span>性<span class="_ _0"></span><span class="ff1">”</span>中的<span class="_ _0"></span><span class="ff3">“</span>设置<span class="_ _1"></span>设置<span class="_ _0"></span><span class="ff1">”</span>选项<span class="_ _0"></span>卡上</div><div class="t m0 x2 h5 y4a ff2 fs2 fc0 sc0 ls0 ws0">完成。</div><div class="t m0 x2 h5 y4b ff1 fs2 fc0 sc0 ls0 ws0">InitializeT<span class="_ _0"></span>ables<span class="_ _0"></span><span class="ff2">方法查<span class="_ _0"></span>找所有用<span class="_ _0"></span><span class="ff3">InitializeTa<span class="_ _0"></span>ble</span>属性修<span class="_ _0"></span>饰的方法<span class="_ _0"></span>并执行它<span class="_ _0"></span>们。<span class="_ _0"></span><span class="ff3"> </span>这些方法是在脚<span class="_ _0"></span>手架过程<span class="_ _0"></span>中自动生<span class="_ _0"></span>成的,<span class="_ _0"></span>并启用</span></div></div></div><div class="pi" data-data='{"ctm":[1.611639,0.000000,0.000000,1.611639,0.000000,0.000000]}'></div></div>