Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/azure/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正在从Windows Azure VM获取代码_C#_Azure_Virtual Machine_Data Recovery - Fatal编程技术网

C# 正在从Windows Azure VM获取代码

C# 正在从Windows Azure VM获取代码,c#,azure,virtual-machine,data-recovery,C#,Azure,Virtual Machine,Data Recovery,好的,我的硬盘坏了。了不起的事我在上面的所有web开发代码都与它一起运行,现在我在Ubuntu上运行,试图恢复我可以恢复的任何数据。硬盘一直在断开连接,有时它可能会长时间停止响应,所以这真是个麻烦 无论如何,回到主题上来——我有我的web开发代码,它被打包并上传到Azure;现在我想知道的是,是否有可能从虚拟机获取我所有的.cs文件。我注意到Approt和siteroot文件夹,但我看到的只是视图、.asax文件、其他一些杂项文件,没有扩展名为.cs的内容 有什么办法可以得到我打包的代码的副本吗

好的,我的硬盘坏了。了不起的事我在上面的所有web开发代码都与它一起运行,现在我在Ubuntu上运行,试图恢复我可以恢复的任何数据。硬盘一直在断开连接,有时它可能会长时间停止响应,所以这真是个麻烦

无论如何,回到主题上来——我有我的web开发代码,它被打包并上传到Azure;现在我想知道的是,是否有可能从虚拟机获取我所有的.cs文件。我注意到Approt和siteroot文件夹,但我看到的只是视图、.asax文件、其他一些杂项文件,没有扩展名为.cs的内容


有什么办法可以得到我打包的代码的副本吗?或者(作为最后手段)获取.cspkg文件并从中工作的任何方法?

您在web角色上看到的站点和cspkg文件中的站点是编译的输出,因此您无法从中获取原始.cs文件。也就是说,您可以使用Reflector、Just Decompile或其他各种反编译器等工具,将编译后的代码逆向工程,使其与原始C#代码非常接近(不是我假设这是您自己的代码,或者没有反工程规定的代码)。这至少可以让您使用webrole上的位获取大部分代码,然后查看它的性能

注意,您可以打开cspkg文件。这只是一个zip文件。您可以使用.zip文件扩展名重命名并打开它,但在其中找不到.cs文件。只有当您在一个web角色中有多个网站时,才会发现这种情况。Windows Azure的默认打包程序不编译其他站点,只打包其根目录中的所有文件。实际上,这对实际部署毫无帮助,但这可能对您没有帮助

在这方面,您可能比我领先很多,但我建议您使用某种个人源代码控制系统,以避免将来出现此问题