Gar*_*rth 10 c# asp.net azure azure-table-storage
我正在开发一个ASP.Net MVC和WebApi站点,该站点在Windows 8上的Visual Studio 2015中使用表存储.它在开发环境中工作正常(当我UseDevelopmentStorage=true在web.config中设置时).我试图点击" http:// localhost:80 "我必须使用这个并且不能使用另一个端口,有我发布到我的网站的另一个程序,它只会发布到该位置.
我最近运行该站点并在我的代码到达以下代码行时出现以下错误: CloudTable table = cloudTableClient.GetTableReference(tableName);
错误:
无法建立连接,因为目标计算机主动拒绝它127.0.0.1:10002
我尝试过以下方法:
1)Uninstall-Package WindowsAzure.Storage -Version 6.1.0并从NuGet重新安装它
2)重新启动Windows
3)在这里浏览过的C:\Program Files\Microsoft SDKs\Azure\.NET SDK\v2.7\bin和ran cspack.ext(我看不到任何东西,这似乎涉及到存储)
它还没有运行.关于我可以尝试的任何想法?
更新:
收到上面的错误后,我打开了Cloud Explorer窗口,可以看到我在dev中使用我的代码在本地创建的表(假设这意味着我的本地存储模拟器正在运行),但我仍然遇到错误.然后我关上窗户再打开它.它在扩展"存储帐户(经典)"时稍微旋转,但最终显示了我创建的表格.
奇怪的是,"云资源管理器"窗口中唯一的节点是"存储帐户(经典)",我确信之前有其他节点的列表(即WebApps等).如果有人可以帮忙解决这个问题,请你可以逐步说明该做什么(不是"模拟器没有运行").这是新的,所以寻找简单的指示,我的理解.
非常感激.
Jef*_*eff 22
您必须启动存储模拟器.它位于%programfiles(x86)%\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe.
作为奖励,这里是一个批处理脚本,用于清理模拟器,以及启动它.
SET emu="%programfiles(x86)%\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe"
%emu% stop
%emu% clear all
%emu% start
Run Code Online (Sandbox Code Playgroud)
UPDATE
可以在此处找到经典帐户和"新"存储帐户之间的区别.
经典存储帐户是使用现有的Service Management API(过去几年中可用的REST API堆栈)创建的.较新的存储帐户是使用新的Azure资源管理器(ARM)API创建的(现在也包含在PowerShell和CLI中).最终,它们为您的应用程序提供相同的资源,但它们的创建/管理方式不同,并且存在一些细微差别(例如标记通过ARM脚本创建的资源的能力).
您无法将经典存储帐户(或任何经典资源)转换为较新的类型.除非您尝试混合来自经典和新的资源,例如将基于ARM的虚拟机添加到基于经典的虚拟网络,或者从vhd映像启动基于ARM的VM,否则您实际上并不需要这样做.坐在经典存储帐户中(例如,您可以随时将vhd复制到新的存储帐户).请注意,对于一般存储使用(blobs/tables/queues),您只需要URI和主(或辅助)密钥.有了这些,您可以从任何位置,从任何VM /网站/等访问您的存储资源,例如,无论您是从经典虚拟机还是新虚拟机访问存储.
TL; DR:不同之处在于用于管理存储帐户的API.用于将数据下载/上载到容器的现有API和SDK可与两者一起使用.
| 归档时间: |
|
| 查看次数: |
5604 次 |
| 最近记录: |