我是怎么学习.net core的<二>

2017-05-11  本文已影响0人  幻影旅团

调试eshop


前面eshop源码只能一个一个文件的看,看到了网站部分,就有写头晕啦。

还是希望彻底运行调试一下程序,才能有感觉。

先测试运行环境。安装redis,rabbitmq.

redis安装比较简单,测试也非常容易,就是打开一个客户端连接,一个KEY里面直接写Value

开另外一个客户端,就可以根据KEY取Value

总体上来说就是一个巨大的dictionary.

然而程序还是没有跑通,提示的Bug是rabbitmq连接为空的。

可是明明测试rabbitmq是成功的,调试的时候发现amqp的端口是5678

修改端口依然调试失败

专门写个小程序测试一下rabbitmq用法,简单大气,比较喜欢这种风格,发现在本地的话,修改hostname即可

不知道为啥eshop配置文件的hostname是空的,所以出错了,把HostName修改为本地

果然调试通过,输出swagger 风格Api,大功告成

使用Polly


var policy = Policy.Handle()                .Or()

.WaitAndRetry(5, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)), (ex, time) =>

{

_logger.LogWarning(ex.ToString());

});

using (var channel = _persisterConnection.CreateModel())

{

var eventName = @event.GetType()

.Name;

channel.ExchangeDeclare(exchange: BROKER_NAME,

type: "direct");

var message = JsonConvert.SerializeObject(@event);

var body = Encoding.UTF8.GetBytes(message);

policy.Execute(() =>

{

channel.BasicPublish(exchange: BROKER_NAME,

routingKey: eventName,

basicProperties: null,

body: body);

});

}

接触Swagger


简直被惊艳了,不仅可以描述API,还可以发送请求,连MODEL都展示了,而我同事一直在手动写WORD文档,先研究研究然后告诉他怎么提高效率

上一篇下一篇

猜你喜欢

热点阅读