Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.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# 无法在调试中创建DataCacheFactory实例 我正在从事将在WindowsAzure web角色上运行的web项目 在云中,将有2个角色实例 我正在使用分布在2个角色实例之间的同一位置命名缓存(在角色缓存中) 在本地,我使用单个实例进行调试 在云端,缓存客户端创建成功,工作流畅 在本地调试时,我无法创建DataCacheFactory的实例,因为当调用构造函数时,程序流“停止”并且不会继续到下面的语句。也不例外_C#_Caching_Azure - Fatal编程技术网

C# 无法在调试中创建DataCacheFactory实例 我正在从事将在WindowsAzure web角色上运行的web项目 在云中,将有2个角色实例 我正在使用分布在2个角色实例之间的同一位置命名缓存(在角色缓存中) 在本地,我使用单个实例进行调试 在云端,缓存客户端创建成功,工作流畅 在本地调试时,我无法创建DataCacheFactory的实例,因为当调用构造函数时,程序流“停止”并且不会继续到下面的语句。也不例外

C# 无法在调试中创建DataCacheFactory实例 我正在从事将在WindowsAzure web角色上运行的web项目 在云中,将有2个角色实例 我正在使用分布在2个角色实例之间的同一位置命名缓存(在角色缓存中) 在本地,我使用单个实例进行调试 在云端,缓存客户端创建成功,工作流畅 在本地调试时,我无法创建DataCacheFactory的实例,因为当调用构造函数时,程序流“停止”并且不会继续到下面的语句。也不例外,c#,caching,azure,C#,Caching,Azure,这就是我创建Factory和cache client的代码: var cacheFactoryConfig = new DataCacheFactoryConfiguration { ChannelOpenTimeout = TimeSpan.FromMinutes(2), TransportProperties = {ReceiveTimeout = TimeSpan.FromSeconds(45)} };

这就是我创建Factory和cache client的代码:

var cacheFactoryConfig = new DataCacheFactoryConfiguration
        {
            ChannelOpenTimeout = TimeSpan.FromMinutes(2),
            TransportProperties = {ReceiveTimeout = TimeSpan.FromSeconds(45)}
        };
        DataCacheFactory cacheFactory;
        try
        {
            cacheFactory = new DataCacheFactory(cacheFactoryConfig);// <--stops here
        }
        catch (Exception e)
        {
            Trace.WriteLine(string.Format("--> Message-> {0}; --> Stack Trace->{1}", e.Message, e.StackTrace));
            throw;
        }
cacheClient = cacheFactory.GetDefaultCache();
var cacheFactoryConfig=new DataCacheFactoryConfiguration
{
ChannelOpenTimeout=TimeSpan.FromMinutes(2),
TransportProperties={ReceiveTimeout=TimeSpan.FromSeconds(45)}
};
数据缓存工厂缓存工厂;
尝试
{
cacheFactory=新的DataCacheFactory(cacheFactoryConfig);//Windows 7 Professional
  • IDE->Visual Studio 2013最终更新4
  • Windows Azure缓存包2.4.0.0
  • Windows Azure SDK版本2.4

  • 我没有安装Windows Server AppFabric,所以我打算安装它!

    经过几天的调查,我成功地解决了这个问题,并成功创建了DataCacheFactory和DataCache等实例。下面的两篇文章描述并解决了这个问题

    • 在我的例子中,我安装了Microsoft Server AppFabric,所以我将其删除
    • 为了以防万一,我删除了所有可用的WindowsAzure SDK(安装了2.4)并 与Azure缓存相关的所有旧nuget包
    • 我确实验证了所有组件也已从GAC中删除
    • 在“清理”之后,我再次安装可用的最新Azure SDK,即2.5版
    我想指出,windows事件查看器帮助很大。在windows Azure日志中,我发现在使用Azure Emulator启动web角色时发生了一个错误。错误由CacheSInstaller.exe->MissingMethodExceprion引发,消息为:

    找不到方法: 'Microsoft.ApplicationServer.Caching.ClusterConfigElement


    在Visual Studio的“调试输出”窗口中是否看到任何内容?-“Microsoft.WindowsFabric.Common.dll中发生了类型为'System.IO.FileNotFoundException'的第一次意外异常”是在创建cacheFactoryConfig对象时抛出的。我也遇到了这个…真的很有趣。但无论如何,AppFabric或Azure cache是sh…;)使用Redis。你也可以在Azure群集上运行Redis,速度似乎快得多