using Aliyun.Acs.Core;
using Aliyun.Acs.Core.Profile;
using Microsoft.Extensions.Caching.Redis;
using Microsoft.Extensions.Caching.Distributed;
using Microsoft.Extensions.Configuration;
using System;
using System.Threading;
namespace SmsReceive
{
class Program
{
private static int maxThread = 2;
static IAcsClient acsClient = null;
private static RedisCache redisCache = null;
static void Main(string[] args)
{
var config = new ConfigurationBuilder().AddJsonFile("config.json", optional: true, reloadOnChange: true).Build();
redisCache = new RedisCache(new RedisCacheOptions()
{
InstanceName = config["Redis:InstanceName"].ToString(),
Configuration = $"{config["Redis:HostName"].ToString()}:{config["Redis:Port"].ToString()},allowAdmin=true,password={config["Redis:Password"].ToString()},defaultdatabase={config["Redis:Defaultdatabase"].ToString()}"
});
////redisCache.Remove("T_Sms_Send");
//var userliststr = redisCache.GetStringAsync("T_Sms_Send").Result.ToString();
//Console.WriteLine(userliststr);
string product = config["Dysms:product"].ToString();
string domain = config["Dysms:domain"].ToString();
string accesskeyid = config["Dysms:accesskeyid"].ToString();
string accesskeysecret = config["Dysms:accesskeysecret"].ToString();
string messagetype = config["Dysms:messagetype"].ToString();
string queuename = config["Dysms:queuename"].ToString();
string regionid = config["Dysms:regionid"].ToString();
string mnsaccountendpoint = config["Dysms:mnsaccountendpoint"].ToString();
IClientProfile profile = DefaultProfile.GetProfile(regionid, accesskeyid, accesskeysecret);
DefaultProfile.AddEndpoint(regionid, regionid, product, domain);
acsClient = new DefaultAcsClient(profile);
//for (int i = 0; i < maxThread; i++)
//{
// ReceiveTask testTask = new ReceiveTask("PullMessageTask-thread-" + i, messagetype, queuename, mnsaccountendpoint, acsClient, redisCache);
// Thread t = new Thread(new ThreadStart(testTask.Handle));
// //启动线程
// t.Start();
//}
ReceiveTask testTask = new ReceiveTask("PullMessageTask-thread", messagetype, queuename, mnsaccountendpoint, acsClient, redisCache);
Thread t = new Thread(new ThreadStart(testTask.Handle));
//启动线程
t.Start();
Console.ReadKey();
}
public partial class T_User_Amount
{
public T_User_Amount()
{ }
#region Model
private int _id;
private string _usercode;
private decimal? _amount;
private decimal? _balance;
private string _remark;
private DateTime? _createtime;
///
/// 自增id
///
public int Id
{
set { _id = value; }
get { return _id; }
}
///
/// 用户账号
///
public string UserCode
{
set { _usercode = value; }
get { return _usercode; }
}
///
/// 金额变动
///
public decimal? Amount
{
set { _amount = value; }
get { return _amount; }
}
///
/// 余额
///
public decimal? Balance
{
set { _balance = value; }
get { return _balance; }
}
///
/// 备注
///
public string Remark
{
set { _remark = value; }
get { return _remark; }
}
///
/// 创建时间
///
public DateTime? CreateTime
{
set { _createtime = value; }
get { return _createtime; }
}
#endregion Model
}
}
}