Here are the examples of the csharp api object.ToString() taken from open source projects. By voting up you can indicate which examples are most useful and appropriate.
22368 Examples
19
Source : BotMainWindow.xaml.cs
with GNU General Public License v3.0
from 00000vish
with GNU General Public License v3.0
from 00000vish
private void storePage1_Click(object sender, RoutedEventArgs e)
{
if (listView1.SelectedItem != null)
{
ListViewItem item = new ListViewItem();
item = (ListViewItem)listView1.SelectedItem;
Process.Start("https://store.steampowered.com/app/" + item.Tag.ToString());
}
}
19
Source : BotMainWindow.xaml.cs
with GNU General Public License v3.0
from 00000vish
with GNU General Public License v3.0
from 00000vish
private void idle1_Click(object sender, RoutedEventArgs e)
{
if (listView1.SelectedItem != null)
{
ListViewItem item = new ListViewItem();
item = (ListViewItem)listView1.SelectedItem;
int temp;
int.TryParse(item.Tag.ToString(), out temp);
SteamBotController.playGame(temp);
}
}
19
Source : ToolWindow.xaml.cs
with GNU General Public License v3.0
from 00000vish
with GNU General Public License v3.0
from 00000vish
private void achievements1_Click(object sender, RoutedEventArgs e)
{
if (listView1.SelectedItem != null)
{
ListViewItem item = new ListViewItem();
item = (ListViewItem)listView1.SelectedItem;
Process.Start(new ProcessStartInfo(SAM_GAME, item.Tag.ToString()));
}
}
19
Source : ToolWindow.xaml.cs
with GNU General Public License v3.0
from 00000vish
with GNU General Public License v3.0
from 00000vish
private void launch1_Click(object sender, RoutedEventArgs e)
{
if (listView1.SelectedItem != null)
{
ListViewItem item = new ListViewItem();
item = (ListViewItem)listView1.SelectedItem;
Process.Start("steam://rungameid/" + item.Tag.ToString());
WindowState = WindowState.Minimized;
}
}
19
Source : ToolWindow.xaml.cs
with GNU General Public License v3.0
from 00000vish
with GNU General Public License v3.0
from 00000vish
private async void startIdler(bool delayed)
{
foreach (ListViewItem item in listView1.SelectedItems)
{
if (delayed)
await Task.Delay(4000);
runningProc.Add(Process.Start(new ProcessStartInfo(STEAM_GAME_CONTROLLER, item.Tag.ToString()) { WindowStyle = ProcessWindowStyle.Hidden }));
}
}
19
Source : GoPhishIntegration.cs
with GNU General Public License v3.0
from 0dteam
with GNU General Public License v3.0
from 0dteam
public static string setReportURL(string headers)
{
// Extract GoPhish Custom Header (X-GOPHISH-ASMN: USERID0123)
var match = new Regex(WebExpID).Match(headers);
foreach (var group in match.Groups)
{
if(group.ToString().Trim()!=string.Empty)
{
// Extract User ID from the header (USERID0123)
string user_id = group.ToString().Replace(WebExpPrefix, string.Empty);
// Build reporting URL, something like this -> https[:]//GOPHISHURL:PORT/report?rid=USERID
string report_url = URLrequest.Replace(@"USERID", user_id);
return report_url;
}
}
// else, no header was found -> No report tracking URL
return "NaN";
}
19
Source : SozlukRequestHandlerBase.cs
with MIT License
from 0ffffffffh
with MIT License
from 0ffffffffh
public bool PushResponseItem(string item, object value)
{
this.respData.AppendFormat("<{0}>{1}</{2}>", item, value.ToString(), item);
return true;
}
19
Source : Entry.cs
with MIT License
from 0ffffffffh
with MIT License
from 0ffffffffh
private string MakeTag(string tagName, object value, string attribName = null, object attribValue = null)
{
if (!string.IsNullOrEmpty(attribName))
return string.Format("<{0} {1}=\"{2}\">{3}</{0}>", tagName, attribName, attribValue.ToString(), value);
return string.Format("<{0}>{1}</{0}>", tagName, value);
}
19
Source : MessageController.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static MessageModel main(String message,string fromQQ) {
string resultContent = "\n无数据";
string content = message;
MessageModel messageModel = null;
if (message == null || message == "" || message.Length == 0)
{
messageModel = new MessageModel(sendMessage: MessageConstant.HELP_CONTENT, isAdmin: false, code: "");
return messageModel;
}
resultContent = "\n无数据";
message = executeCodeReplace(message);
message = message.Trim();
if (message.Length == 0 || message == "")
{
messageModel = new MessageModel(sendMessage: MessageConstant.HELP_CONTENT, isAdmin: false, code: "");
return messageModel;
}
else if (message.Contains(MessageConstant.RANDOM_CONTENT_replacedLE)) {
// 标题查询随机文章
message = message.Replace(MessageConstant.RANDOM_CONTENT_replacedLE, "").Trim();
resultContent = DBHelperMySQL.GetContentRandomByreplacedle(message);
// 标题查询随机课程
string clreplacedContent = DBHelperMySQL.getClreplacedRandomByreplacedle(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_CONTENT_replacedLE);
}
else if (message.Contains(MessageConstant.DESC_CONTENT_replacedLE)) {
// 标题查询最新文章
message = message.Replace(MessageConstant.DESC_CONTENT_replacedLE, "").Trim();
string clreplacedContent = "";
if (message.Length == 0 || message == "" || "".Equals(message) || message == null)
{
// 调用每日最新
resultContent = DBHelperMySQL.getContentDateByToday();
// 标题查询最新课程
clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle("");
}
else
{
resultContent = DBHelperMySQL.getContentDateByreplacedle(message);
clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle(message);
}
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_replacedLE);
}
else if (message.Contains(MessageConstant.DESC_CONTENT_AUTHOR)) {
// 作者查询最新文章
message = message.Replace(MessageConstant.DESC_CONTENT_AUTHOR, "").Trim();
resultContent = DBHelperMySQL.getContentDateByAuthor(message);
// 作者查询最新课程
string clreplacedContent = DBHelperMySQL.getClreplacedDateByAuthor(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_AUTHOR);
} else if (message.Contains(MessageConstant.RANDOM_CONTENT_AUTHOR)) {
// 作者查询随机文章
message = message.Replace(MessageConstant.RANDOM_CONTENT_AUTHOR, "").Trim();
resultContent = DBHelperMySQL.getContentRandomByAuthor(message);
// 作者查询随机课程
string clreplacedContent = DBHelperMySQL.getClreplacedRandomByAuthor(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_CONTENT_AUTHOR);
}
else if (message.Contains(MessageConstant.DESC_CONTENT_TODAY) || message.Contains(MessageConstant.DESC_CONTENT))
{
// 今日最新
message = message.Replace(MessageConstant.DESC_CONTENT_TODAY, "").Trim();
resultContent = DBHelperMySQL.getContentDateByToday();
string clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle("");
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_TODAY);
} else if (message.Contains(MessageConstant.GONG_GAO)) {
// 公告处理
bool flag = DBHelperMySQL.isAdmin(fromQQ);
// 判断是否管理员
if (flag) {
message = message.Replace(MessageConstant.GONG_GAO, "来自i春秋机器人的智能推送\n");
resultContent = message;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: true, code: MessageConstant.GONG_GAO);
}
else {
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.GONG_GAO);
}
}
else if (message.Contains(MessageConstant.AITE_ALL))
{
// 艾特全体处理
bool flag = DBHelperMySQL.isAdmin(fromQQ);
if (flag)
{
message = message.Replace(MessageConstant.AITE_ALL, "来自i春秋机器人的智能推送\n");
resultContent = message;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: true, code: MessageConstant.AITE_ALL);
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.AITE_ALL);
}
}
else if (message.Contains(MessageConstant.HELP) || message.Contains(MessageConstant.HELP_TWO))
{
// Help 帮助等指令
resultContent = MessageConstant.HELP_CONTENT;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HELP_TWO);
} else if (message.Contains(MessageConstant.DESC_VIDEO)) {
// 标题查询最新教程
message = message.Replace(MessageConstant.DESC_VIDEO, "").Trim();
resultContent = DBHelperMySQL.getCourseDateByreplacedle(message);
// 标题查询最新课程
string clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_VIDEO);
}
else if (message.Contains(MessageConstant.RANDOM_VIDEO))
{
// 标题查询随机教程
message = message.Replace(MessageConstant.RANDOM_VIDEO, "").Trim();
resultContent = DBHelperMySQL.getCourseRandomByreplacedle(message);
// 标题查询随机课程
string clreplacedContent = DBHelperMySQL.getClreplacedRandomByreplacedle(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_VIDEO);
}
else if (message.Contains(MessageConstant.TEST))
{
// 测试命令
resultContent = " [CQ:image,file=photo.jpg]";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.TEST);
} else if (message.Contains(MessageConstant.SELECT_MONEY)) {
string tmpStr = message.Replace(MessageConstant.SELECT_MONEY, "").Trim();
// 判断是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
string money = "";
if (tmpStr.Length > 0 && isAdmin)
{
// 查询余额
money = DBHelperMySQL.getBlankMoney(tmpStr);
}
else
{
// 查询余额
money = DBHelperMySQL.getBlankMoney(fromQQ);
}
if (money == "" || money == null || money.Length == 0)
{
resultContent = "没有数据,请联系QQ:758841765 给予昵称QQ等信息。";
}
else
{
resultContent = "\n当前余额为 " + money;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.SELECT_MONEY);
}
else if (message.Contains(MessageConstant.HISTORY_MONEY))
{
// 提现记录
string historyMoney = DBHelperMySQL.getBlankHistory(fromQQ);
// 查询当前余额
string money = DBHelperMySQL.getBlankMoney(fromQQ);
if (money == "" || money == null || money.Length == 0) {
resultContent = "没有数据,请联系QQ:758841765 给予昵称QQ等信息。";
}
else {
resultContent = "\n当前余额为 " + money + "\n";
// 查询历史记录
resultContent += "提现记录\n";
resultContent += "金额\t\t时间\n" + historyMoney;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HISTORY_MONEY);
}
else if (message.Contains(MessageConstant.APPLY_MONEY))
{
// 申请提现
resultContent = "请联系【坏蛋】,QQ号:286894635。\n[CQ:at,qq=286894635]";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.APPLY_MONEY);
} else if (message.Contains(MessageConstant.ABOUT)) {
resultContent = "i春秋社区机器人,研发人员为:0nise,产品设计为:坏蛋!";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.ABOUT);
} else if (message.Contains(MessageConstant.UPDATE_MONEY)) {
// 更新金额
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin) {
try
{
decimal tmpMoney = 0.0M;
// 提现
if (message.Contains(MessageConstant.PUT_FORWARD))
{
int moneyIndex = message.IndexOf(MessageConstant.PUT_FORWARD + ":");
int index = message.IndexOf(MessageConstant.UPDATE_MONEY);
if (moneyIndex >= 0 && index >= 0)
{
decimal money = Convert.ToDecimal(message.Substring(moneyIndex).Replace("提现:", "").Replace(" ", ""));
if (money > tmpMoney)
{
string qq = message.Replace(message.Substring(moneyIndex), "").Replace(MessageConstant.UPDATE_MONEY, "").Replace(" ", "");
resultContent = DBHelperMySQL.updateBlank(qq, money,"0");
}
else
{
resultContent = "提现金额必须大于0!";
}
}
}
// 加钱
else if (message.Contains(MessageConstant.ADD_MONEY))
{
int moneyIndex = message.IndexOf(MessageConstant.ADD_MONEY + ":");
int index = message.IndexOf(MessageConstant.ADD_MONEY);
if (moneyIndex >= 0 && index >= 0)
{
decimal money = Convert.ToDecimal(message.Substring(moneyIndex).Replace("加钱:", "").Replace(" ", ""));
if (money > tmpMoney)
{
string qq = message.Replace(message.Substring(moneyIndex), "").Replace(MessageConstant.UPDATE_MONEY, "").Replace(" ", "");
resultContent = DBHelperMySQL.updateBlank(qq, money,"1");
}
else
{
resultContent = "加钱金额必须大于0!";
}
}
}
}
catch (Exception)
{
resultContent = "更新失败。";
}
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.UPDATE_MONEY);
}
else if (message.Contains(MessageConstant.TODAY_COUNT))
{
// 今日使用数量
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
int count = DBHelperMySQL.getToday();
resultContent = "今日使用人数达"+count+"人";
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.TODAY_COUNT);
}
else if (message.Contains(MessageConstant.USER_TOTAL))
{
// 总人数
// 判定是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
int count = DBHelperMySQL.getUserTotal();
DateTime dt = DateTime.Now;
// 获取日期
string date = dt.ToLongDateString().ToString();
resultContent = "截止" + date + ",机器人历史使用人数达"+count+"人。";
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.USER_TOTAL);
}
else if (message.Contains(MessageConstant.THIS_WEEK))
{
// 七日使用
// 判定是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
Hashtable hashtable = DBHelperMySQL.getThisWeek();
resultContent = "";
foreach (Object item in hashtable.Keys)
{
string dateData = item.ToString();
string count = hashtable[item].ToString();
resultContent += dateData + " 使用人数为:" + count + "人;\n";
}
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.USER_TOTAL);
}
else if (message.Contains(MessageConstant.QUN_TOTAL))
{
// 群数量
// 判定是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
resultContent = "群数量";
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.QUN_TOTAL);
}
else if (message.Contains(MessageConstant.MONEY_DESC))
{
// 财富榜
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
// 检索是否为做作家团
if (DBHelperMySQL.exitsUser(fromQQ) || isAdmin)
{
resultContent = DBHelperMySQL.Top30Money();
}
else
{
resultContent = "您不是作家团成员!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.MONEY_DESC);
}
else
{
// 其他内容
resultContent = MessageConstant.HELP_CONTENT;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: "");
}
if (resultContent == "" || resultContent == null || resultContent.Length == 0) {
messageModel.SendMessage = "\n无数据";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HELP);
}
// 记录用户操作数据
DBHelperMySQL.addUserData(fromQQ, content, resultContent);
return messageModel;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static string getBlankMoney(string qq) {
string sql = "SELECT user_money FROM ichunqiu_blank WHERE user_qq = @qq";
var parameter = new List<MySqlParameter>();
string userMoney = "";
parameter.Add(new MySqlParameter("@qq",qq));
MySqlConnection connection = new MySqlConnection(Constants.connectionStr);
try
{
connection.Open();
MySqlCommand mySqlCommand = new MySqlCommand(sql, connection);
// 添加参数
if (parameter.Count > 0)
{
mySqlCommand.Parameters.AddRange(parameter.ToArray());
}
// 提取数据
MySqlDataReader myDataReader = mySqlCommand.ExecuteReader();
while (myDataReader.Read() == true)
{
userMoney = myDataReader["user_money"].ToString();
break;
}
myDataReader.Close();
}
catch (Exception e)
{
throw e;
}
finally
{
connection.Close();
}
return userMoney;
}
19
Source : ConnectionPool.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
private bool isUserful(MySqlConnection conn) {
bool result = true;
if (conn != null)
{
// 测试sql
string sql = "SELECT 1;";
try
{
using (MySqlCommand cmd = new MySqlCommand(sql, conn))
{
cmd.ExecuteScalar().ToString();
}
}
catch (Exception)
{
result = false;
}
}
return result;
}
19
Source : Protocol16SerializerTest.cs
with MIT License
from 0blu
with MIT License
from 0blu
private void TestSerializeMethod(byte[] expectedBytes, object obj)
{
var expected = new MemoryStream(expectedBytes);
var actual = new Protocol16Stream();
Protocol16Serializer.Serialize(actual, obj, true);
ToString(actual);
replacedert.AreEqual(expected, actual);
}
19
Source : Configuration.ValueConfig.cs
with GNU Affero General Public License v3.0
from 0ceal0t
with GNU Affero General Public License v3.0
from 0ceal0t
private bool DrawCombo(string id, T[] comboOptions, T currentValue, out T value) {
value = currentValue;
if (ImGui.BeginCombo(id, $"{currentValue}", ImGuiComboFlags.HeightLargest)) {
if (ShowSearch) {
ImGui.SetNexreplacedemWidth(ImGui.GetWindowContentRegionWidth() - 50);
ImGui.InputText("Search##Combo", ref SearchInput, 256);
}
if (ShowSearch) ImGui.BeginChild("Child##Combo", new Vector2(ImGui.GetWindowContentRegionWidth(), 200), true);
var idx = 0;
foreach (T option in comboOptions) {
if (ShowSearch && !string.IsNullOrEmpty(SearchInput)) {
var optionString = option.ToString();
if (!optionString.ToLower().Contains(SearchInput.ToLower())) continue;
}
if (ImGui.Selectable($"{option}##Combo{idx}", option.Equals(currentValue))) {
value = option;
if (ShowSearch) ImGui.EndChild();
ImGui.EndCombo();
return true;
}
idx++;
}
if (ShowSearch) ImGui.EndChild();
ImGui.EndCombo();
}
return false;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static string getBlankMoney(string qq)
{
string sql = "SELECT user_money FROM ichunqiu_blank WHERE user_qq = @qq";
var parameter = new List<MySqlParameter>();
string userMoney = "";
parameter.Add(new MySqlParameter("@qq", qq));
MySqlConnection connection = null;
try
{
connection = ConnectionPool.getPool().getConnection();
while (connection == null)
{
}
using (MySqlCommand mySqlCommand = new MySqlCommand(sql, connection))
{
// 添加参数
if (parameter.Count > 0)
{
mySqlCommand.Parameters.AddRange(parameter.ToArray());
}
// 提取数据
using (MySqlDataReader myDataReader = mySqlCommand.ExecuteReader())
{
while (myDataReader.Read() == true)
{
userMoney = myDataReader["user_money"].ToString();
break;
}
}
}
}
catch (Exception e)
{
throw e;
}
finally
{
if (connection != null)
{
connection.Close();
}
// 关闭数据库链接
ConnectionPool.getPool().closeConnection(connection);
}
return userMoney;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static string getBlankHistory(string qq)
{
string sql = "SELECT money,create_date FROM ichunqiu_blank_history WHERE user_qq = @qq AND operation = '0' ;";
var parameter = new List<MySqlParameter>();
string resultStr = "";
parameter.Add(new MySqlParameter("@qq", qq));
MySqlConnection connection = null;
try
{
connection = ConnectionPool.getPool().getConnection();
while (connection == null)
{
}
using (MySqlCommand mySqlCommand = new MySqlCommand(sql, connection))
{
// 添加参数
if (parameter.Count > 0)
{
mySqlCommand.Parameters.AddRange(parameter.ToArray());
}
// 提取数据
using (MySqlDataReader myDataReader = mySqlCommand.ExecuteReader())
{
while (myDataReader.Read() == true)
{
resultStr += myDataReader["money"].ToString() + "\t" + myDataReader["create_date"] + "\n";
}
}
}
}
catch (Exception e)
{
throw e;
}
finally
{
if (connection != null)
{
connection.Close();
}
// 关闭数据库链接
ConnectionPool.getPool().closeConnection(connection);
}
return resultStr;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static Hashtable getThisWeek()
{
string sql = "select user_qq,DATE_FORMAT(create_date,'%Y-%m-%d') as date from ichunqiu_user where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(create_date) GROUP BY user_qq,DATE_FORMAT(create_date,'%Y-%m-%d');";
Hashtable hashtable = new Hashtable();
MySqlConnection connection = null;
try
{
connection = ConnectionPool.getPool().getConnection();
// 链接为null就执行等待
while (connection == null)
{
}
using (MySqlCommand mySqlCommand = new MySqlCommand(sql, connection))
{
// 提取数据
using (MySqlDataReader myDataReader = mySqlCommand.ExecuteReader())
{
while (myDataReader.Read() == true)
{
string date = myDataReader["date"].ToString();
if (hashtable.Contains(date))
{
hashtable[date] = (Convert.ToInt16(hashtable[date]) + 1).ToString();
}
else
{
hashtable.Add(date, "1");
}
}
}
}
}
catch (Exception e)
{
throw e;
}
finally
{
if (connection != null)
{
connection.Close();
}
ConnectionPool.getPool().closeConnection(connection);
}
return hashtable;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static bool isSuperAdmin(string qq) {
string sql = "SELECT is_admin FROM ichunqiu_admin WHERE qq = @qq ";
var parameter = new List<MySqlParameter>();
parameter.Add(new MySqlParameter("@qq", qq));
MySqlConnection connection = null;
bool flag = false;
try
{
connection = ConnectionPool.getPool().getConnection();
while (connection == null)
{
}
using (MySqlCommand cmd = new MySqlCommand(sql,connection))
{
using (MySqlDataReader myReader = cmd.ExecuteReader())
{
while (myReader.Read() == true)
{
if ("1".Equals(myReader["is_admin"].ToString()))
{
flag = true;
}
}
}
}
}
catch (Exception)
{
flag = false;
}
finally
{
if (connection != null)
{
connection.Close();
}
// 关闭数据库链接
ConnectionPool.getPool().closeConnection(connection);
}
return flag;
}
19
Source : MessageController.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static MessageModel main(String message,string fromQQ) {
string resultContent = "\n无数据";
string content = message;
MessageModel messageModel = null;
if (message == null || message == "" || message.Length == 0)
{
messageModel = new MessageModel(sendMessage: MessageConstant.HELP_CONTENT, isAdmin: false, code: "");
return messageModel;
}
resultContent = "\n无数据";
message = executeCodeReplace(message);
message = message.Trim();
if (message.Length == 0 || message == "")
{
messageModel = new MessageModel(sendMessage: MessageConstant.HELP_CONTENT, isAdmin: false, code: "");
return messageModel;
}
else if (message.Contains(MessageConstant.RANDOM_CONTENT_replacedLE)) {
// 标题查询随机文章
message = message.Replace(MessageConstant.RANDOM_CONTENT_replacedLE, "").Trim();
resultContent = DBHelperMySQL.GetContentRandomByreplacedle(message);
// 标题查询随机课程
string clreplacedContent = DBHelperMySQL.getClreplacedRandomByreplacedle(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_CONTENT_replacedLE);
}
else if (message.Contains(MessageConstant.DESC_CONTENT_replacedLE)) {
// 标题查询最新文章
message = message.Replace(MessageConstant.DESC_CONTENT_replacedLE, "").Trim();
string clreplacedContent = "";
if (message.Length == 0 || message == "" || "".Equals(message) || message == null)
{
// 调用每日最新
resultContent = DBHelperMySQL.getContentDateByToday();
// 标题查询最新课程
clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle("");
}
else
{
resultContent = DBHelperMySQL.getContentDateByreplacedle(message);
clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle(message);
}
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_replacedLE);
}
else if (message.Contains(MessageConstant.DESC_CONTENT_AUTHOR)) {
// 作者查询最新文章
message = message.Replace(MessageConstant.DESC_CONTENT_AUTHOR, "").Trim();
resultContent = DBHelperMySQL.getContentDateByAuthor(message);
// 作者查询最新课程
string clreplacedContent = DBHelperMySQL.getClreplacedDateByAuthor(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_AUTHOR);
} else if (message.Contains(MessageConstant.RANDOM_CONTENT_AUTHOR)) {
// 作者查询随机文章
message = message.Replace(MessageConstant.RANDOM_CONTENT_AUTHOR, "").Trim();
resultContent = DBHelperMySQL.getContentRandomByAuthor(message);
// 作者查询随机课程
string clreplacedContent = DBHelperMySQL.getClreplacedRandomByAuthor(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_CONTENT_AUTHOR);
}
else if (message.Contains(MessageConstant.DESC_CONTENT_TODAY) || message.Contains(MessageConstant.DESC_CONTENT))
{
// 今日最新
message = message.Replace(MessageConstant.DESC_CONTENT_TODAY, "").Trim();
resultContent = DBHelperMySQL.getContentDateByToday();
string clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle("");
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_CONTENT_TODAY);
} else if (message.Contains(MessageConstant.GONG_GAO)) {
// 公告处理
bool flag = DBHelperMySQL.isAdmin(fromQQ);
// 判断是否管理员
if (flag) {
message = message.Replace(MessageConstant.GONG_GAO, "来自i春秋机器人的智能推送\n");
resultContent = message;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: true, code: MessageConstant.GONG_GAO);
}
else {
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.GONG_GAO);
}
}
else if (message.Contains(MessageConstant.AITE_ALL))
{
// 艾特全体处理
bool flag = DBHelperMySQL.isAdmin(fromQQ);
if (flag)
{
message = message.Replace(MessageConstant.AITE_ALL, "来自i春秋机器人的智能推送\n");
resultContent = message;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: true, code: MessageConstant.AITE_ALL);
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.AITE_ALL);
}
}
else if (message.Contains(MessageConstant.HELP) || message.Contains(MessageConstant.HELP_TWO))
{
// Help 帮助等指令
resultContent = MessageConstant.HELP_CONTENT;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HELP_TWO);
} else if (message.Contains(MessageConstant.DESC_VIDEO)) {
// 标题查询最新教程
message = message.Replace(MessageConstant.DESC_VIDEO, "").Trim();
resultContent = DBHelperMySQL.getCourseDateByreplacedle(message);
// 标题查询最新课程
string clreplacedContent = DBHelperMySQL.getClreplacedDateByreplacedle(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.DESC_VIDEO);
}
else if (message.Contains(MessageConstant.RANDOM_VIDEO))
{
// 标题查询随机教程
message = message.Replace(MessageConstant.RANDOM_VIDEO, "").Trim();
resultContent = DBHelperMySQL.getCourseRandomByreplacedle(message);
// 标题查询随机课程
string clreplacedContent = DBHelperMySQL.getClreplacedRandomByreplacedle(message);
if (clreplacedContent.Length > 0 && !"".Equals(clreplacedContent))
{
resultContent += clreplacedContent;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.RANDOM_VIDEO);
}
else if (message.Contains(MessageConstant.TEST))
{
// 测试命令
resultContent = " [CQ:image,file=photo.jpg]";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.TEST);
} else if (message.Contains(MessageConstant.SELECT_MONEY)) {
// 查询余额
string money = DBHelperMySQL.getBlankMoney(fromQQ);
if (money == "" || money == null || money.Length == 0)
{
resultContent = "没有数据,请联系QQ:758841765 给予昵称QQ等信息。";
}
else
{
resultContent = "\n当前余额为 " + money;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.SELECT_MONEY);
}
else if (message.Contains(MessageConstant.HISTORY_MONEY))
{
// 提现记录
string historyMoney = DBHelperMySQL.getBlankHistory(fromQQ);
// 查询当前余额
string money = DBHelperMySQL.getBlankMoney(fromQQ);
if (money == "" || money == null || money.Length == 0) {
resultContent = "没有数据,请联系QQ:758841765 给予昵称QQ等信息。";
}
else {
resultContent = "\n当前余额为 " + money + "\n";
// 查询历史记录
resultContent += "提现记录\n";
resultContent += "金额\t\t时间\n" + historyMoney;
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HISTORY_MONEY);
}
else if (message.Contains(MessageConstant.APPLY_MONEY))
{
// 申请提现
resultContent = "请联系【坏蛋】,QQ号:286894635。\n[CQ:at,qq=286894635]";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.APPLY_MONEY);
} else if (message.Contains(MessageConstant.ABOUT)) {
resultContent = "i春秋社区机器人,研发人员为:0nise!";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.ABOUT);
} else if (message.Contains(MessageConstant.UPDATE_MONEY)) {
// 更新金额
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin) {
try
{
int moneyIndex = message.IndexOf("提现:");
int index = message.IndexOf(MessageConstant.UPDATE_MONEY);
if (moneyIndex >= 0 && index >= 0)
{
decimal money = Convert.ToDecimal(message.Substring(moneyIndex).Replace("提现:", "").Replace(" ",""));
string qq = message.Replace(message.Substring(moneyIndex), "").Replace(MessageConstant.UPDATE_MONEY, "").Replace(" ", "");
resultContent = DBHelperMySQL.updateBlank(qq,money);
}
}
catch (Exception)
{
resultContent = "更新失败。";
}
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.UPDATE_MONEY);
}
else if (message.Contains(MessageConstant.TODAY_COUNT))
{
// 今日使用数量
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
int count = DBHelperMySQL.getToday();
resultContent = "今日使用人数达"+count+"人";
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.TODAY_COUNT);
}
else if (message.Contains(MessageConstant.USER_TOTAL))
{
// 总人数
// 判定是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
int count = DBHelperMySQL.getUserTotal();
DateTime dt = DateTime.Now;
// 获取日期
string date = dt.ToLongDateString().ToString();
resultContent = "截止" + date + ",机器人历史使用人数达"+count+"人。";
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.USER_TOTAL);
}
else if (message.Contains(MessageConstant.THIS_WEEK))
{
// 七日使用
// 判定是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
Hashtable hashtable = DBHelperMySQL.getThisWeek();
resultContent = "";
foreach (Object item in hashtable.Keys)
{
string dateData = item.ToString();
string count = hashtable[item].ToString();
resultContent += dateData + " 使用人数为:" + count + "人;\n";
}
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.USER_TOTAL);
}
else if (message.Contains(MessageConstant.QUN_TOTAL))
{
// 群数量
// 判定是否为管理员
bool isAdmin = DBHelperMySQL.isAdmin(fromQQ);
if (isAdmin)
{
resultContent = "群数量";
}
else
{
resultContent = "您不是管理员!请联系坏蛋,QQ286894635!";
}
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: isAdmin, code: MessageConstant.QUN_TOTAL);
}
else
{
// 其他内容
resultContent = MessageConstant.HELP_CONTENT;
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: "");
}
if (resultContent == "" || resultContent == null || resultContent.Length == 0) {
messageModel.SendMessage = "\n无数据";
messageModel = new MessageModel(sendMessage: resultContent, isAdmin: false, code: MessageConstant.HELP);
}
// 记录用户操作数据
DBHelperMySQL.addUserData(fromQQ, content, resultContent);
return messageModel;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static string getBlankHistory(string qq) {
string sql = "SELECT money,create_date FROM ichunqiu_blank_history WHERE user_qq = @qq";
var parameter = new List<MySqlParameter>();
string resultStr = "";
parameter.Add(new MySqlParameter("@qq", qq));
MySqlConnection connection = new MySqlConnection(Constants.connectionStr);
try
{
connection.Open();
MySqlCommand mySqlCommand = new MySqlCommand(sql, connection);
// 添加参数
if (parameter.Count > 0)
{
mySqlCommand.Parameters.AddRange(parameter.ToArray());
}
// 提取数据
MySqlDataReader myDataReader = mySqlCommand.ExecuteReader();
while (myDataReader.Read() == true)
{
resultStr += myDataReader["money"].ToString()+"\t"+ myDataReader["create_date"]+"\n";
}
myDataReader.Close();
}
catch (Exception e)
{
throw e;
}
finally
{
connection.Close();
}
return resultStr;
}
19
Source : DBHelperMySQL.cs
with Apache License 2.0
from 0nise
with Apache License 2.0
from 0nise
public static Hashtable getThisWeek()
{
string sql = "select user_qq,DATE_FORMAT(create_date,'%Y-%m-%d') as date from ichunqiu_user where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(create_date) GROUP BY user_qq,DATE_FORMAT(create_date,'%Y-%m-%d');";
Hashtable hashtable = new Hashtable();
MySqlConnection connection = new MySqlConnection(Constants.connectionStr);
try
{
connection.Open();
MySqlCommand mySqlCommand = new MySqlCommand(sql, connection);
// 提取数据
MySqlDataReader myDataReader = mySqlCommand.ExecuteReader();
while (myDataReader.Read() == true)
{
string date = myDataReader["date"].ToString();
if (hashtable.Contains(date))
{
hashtable[date] = (Convert.ToInt16(hashtable[date]) + 1).ToString();
}
else
{
hashtable.Add(date, "1");
}
}
myDataReader.Close();
}
catch (Exception e)
{
throw e;
}
finally
{
connection.Close();
}
return hashtable;
}
19
Source : StringInjectExtension.cs
with MIT License
from 0x0ade
with MIT License
from 0x0ade
public static string InjectSingleValue(this string formatString, string key, object replacementValue) {
string result = formatString;
//regex replacement of key with value, where the generic key format is:
//Regex foo = new("{(foo)(?:}|(?::(.[^}]*)}))");
Regex attributeRegex = new("{(" + key + ")(?:}|(?::(.[^}]*)}))"); //for key = foo, matches {foo} and {foo:SomeFormat}
//loop through matches, since each key may be used more than once (and with a different format string)
foreach (Match? m in attributeRegex.Matches(formatString)) {
if (m == null)
continue;
string replacement = m.ToString();
if (m.Groups[2].Length > 0) {
//matched {foo:SomeFormat}
//do a double string.Format - first to build the proper format string, and then to format the replacement value
string attributeFormatString = string.Format(CultureInfo.InvariantCulture, "{{0:{0}}}", m.Groups[2]);
replacement = string.Format(CultureInfo.CurrentCulture, attributeFormatString, replacementValue);
} else {
//matched {foo}
replacement = replacementValue.ToString() ?? string.Empty;
}
//perform replacements, one match at a time
result = result.Replace(m.ToString(), replacement); //attributeRegex.Replace(result, replacement, 1);
}
return result;
}
19
Source : Program.cs
with BSD 3-Clause "New" or "Revised" License
from 0xthirteen
with BSD 3-Clause "New" or "Revised" License
from 0xthirteen
static void CleanSingle(string command)
{
string keypath = "Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\RunMRU";
string keyvalue = string.Empty;
string regcmd = string.Empty;
if (command.EndsWith("\\1"))
{
regcmd = command;
}
else
{
regcmd = string.Format("{0}\\1", command);
}
try
{
RegistryKey regkey;
regkey = Registry.CurrentUser.OpenSubKey(keypath, true);
if (regkey.ValueCount > 0)
{
foreach (string subKey in regkey.GetValueNames())
{
if(regkey.GetValue(subKey).ToString() == regcmd)
{
keyvalue = subKey;
regkey.DeleteValue(subKey);
Console.WriteLine(regcmd);
Console.WriteLine("[+] Cleaned {0} from HKCU:{1}", command, keypath);
}
}
if(keyvalue != string.Empty)
{
string mruchars = regkey.GetValue("MRUList").ToString();
int index = mruchars.IndexOf(keyvalue);
mruchars = mruchars.Remove(index, 1);
regkey.SetValue("MRUList", mruchars);
}
}
regkey.Close();
}
catch (ArgumentException)
{
Console.WriteLine("[-] Error: Selected Registry value does not exist");
}
}
19
Source : Program.cs
with BSD 3-Clause "New" or "Revised" License
from 0xthirteen
with BSD 3-Clause "New" or "Revised" License
from 0xthirteen
static void QueryReg()
{
try
{
string keypath = "Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\RunMRU";
Console.WriteLine("Current HKCU:{0} values", keypath);
RegistryKey regkey;
regkey = Registry.CurrentUser.OpenSubKey(keypath, true);
if (regkey.ValueCount > 0)
{
foreach (string subKey in regkey.GetValueNames())
{
Console.WriteLine("[+] Key Name : {0}", subKey);
Console.WriteLine(" Value : {0}", regkey.GetValue(subKey).ToString());
Console.WriteLine();
}
}
regkey.Close();
}
catch (Exception ex)
{
Console.WriteLine("[-] Error: {0}", ex.Message);
}
}
19
Source : DoubleToThickness.cs
with MIT License
from 1217950746
with MIT License
from 1217950746
public object ConvertBack(object value, System.Type targetType, object parameter, CultureInfo culture)
{
if (value != null)
{
if (parameter != null)
{
switch (parameter.ToString())
{
case "Left":
return ((Thickness)value).Left;
case "Top":
return ((Thickness)value).Top;
case "Right":
return ((Thickness)value).Right;
case "Buttom":
return ((Thickness)value).Bottom;
default:
return ((Thickness)value).Left;
}
}
return ((Thickness)value).Left;
}
return 0.0;
}
19
Source : StringToVisibility.cs
with MIT License
from 1217950746
with MIT License
from 1217950746
public object Convert(object value, System.Type targetType, object parameter, CultureInfo culture)
{
return value == null || value.ToString() == "" ? Visibility.Hidden : Visibility.Visible;
}
19
Source : RedumpProvider.cs
with MIT License
from 13xforever
with MIT License
from 13xforever
public async Task<HashSet<DiscKeyInfo>> EnumerateAsync(string discKeyCachePath, string ProductCode, CancellationToken cancellationToken)
{
var result = new HashSet<DiscKeyInfo>();
try
{
var replacedembly = replacedembly.GetExecutingreplacedembly();
var embeddedResources = replacedembly.GetManifestResourceNames().Where(n => n.Contains("Disc_Keys") || n.Contains("Disc Keys")).ToList();
if (embeddedResources.Any())
Log.Trace("Loading embedded redump keys");
else
Log.Warn("No embedded redump keys found");
foreach (var res in embeddedResources)
{
using var resStream = replacedembly.GetManifestResourceStream(res);
using var zip = new ZipArchive(resStream, ZipArchiveMode.Read);
foreach (var zipEntry in zip.Entries.Where(e => e.Name.EndsWith(".dkey", StringComparison.InvariantCultureIgnoreCase)
|| e.Name.EndsWith(".key", StringComparison.InvariantCultureIgnoreCase)))
{
using var keyStream = zipEntry.Open();
using var memStream = new MemoryStream();
await keyStream.CopyToAsync(memStream, cancellationToken).ConfigureAwait(false);
var discKey = memStream.ToArray();
if (zipEntry.Length > 256/8*2)
{
Log.Warn($"Disc key size is too big: {discKey} ({res}/{zipEntry.FullName})");
continue;
}
if (discKey.Length > 16)
{
discKey = Encoding.UTF8.GetString(discKey).TrimEnd().ToByteArray();
}
try
{
result.Add(new DiscKeyInfo(null, discKey, zipEntry.FullName, KeyType.Redump, discKey.ToHexString()));
}
catch (Exception e)
{
Log.Warn(e, $"Invalid disc key format: {discKey}");
}
}
}
if (result.Any())
Log.Info($"Found {result.Count} embedded redump keys");
else
Log.Warn($"Failed to load any embedded redump keys");
}
catch (Exception e)
{
Log.Error(e, "Failed to load embedded redump keys");
}
Log.Trace("Loading cached redump keys");
var diff = result.Count;
try
{
if (Directory.Exists(discKeyCachePath))
{
var matchingDiskKeys = Directory.GetFiles(discKeyCachePath, "*.dkey", SearchOption.TopDirectoryOnly)
.Concat(Directory.GetFiles(discKeyCachePath, "*.key", SearchOption.TopDirectoryOnly));
foreach (var dkeyFile in matchingDiskKeys)
{
try
{
try
{
var discKey = File.ReadAllBytes(dkeyFile);
if (discKey.Length > 16)
{
try
{
discKey = Encoding.UTF8.GetString(discKey).TrimEnd().ToByteArray();
}
catch (Exception e)
{
Log.Warn(e, $"Failed to convert {discKey.ToHexString()} from hex to binary");
}
}
result.Add(new DiscKeyInfo(null, discKey, dkeyFile, KeyType.Redump, discKey.ToString()));
}
catch (InvalidDataException)
{
File.Delete(dkeyFile);
continue;
}
catch (Exception e)
{
Log.Warn(e);
continue;
}
}
catch (Exception e)
{
Log.Warn(e, e.Message);
}
}
}
}
catch (Exception ex)
{
Log.Warn(ex, "Failed to load redump keys from local cache");
}
diff = result.Count - diff;
Log.Info($"Found {diff} cached disc keys");
return result;
}
19
Source : EnvironmentVariableReader.cs
with MIT License
from 1100100
with MIT License
from 1100100
public static T Get<T>(string variable, T defaultValue = default)
{
var value = Environment.GetEnvironmentVariable(variable);
if (string.IsNullOrWhiteSpace(value))
return defaultValue;
value = value.ReplaceIpPlaceholder();
var matches = Regex.Matches(value, "[{](.*?)[}]");
if (matches.Count > 0)
{
foreach (var match in matches)
{
value = value.Replace(match.ToString(), Environment.GetEnvironmentVariable(match.ToString().TrimStart('{').TrimEnd('}')));
}
}
return (T)Convert.ChangeType(value, typeof(T));
}
19
Source : DoubleToThickness.cs
with MIT License
from 1217950746
with MIT License
from 1217950746
public object Convert(object value, System.Type targetType, object parameter, CultureInfo culture)
{
if (value != null)
{
if (parameter != null)
{
switch (parameter.ToString())
{
case "Left":
return new Thickness(System.Convert.ToDouble(value), 0, 0, 0);
case "Top":
return new Thickness(0, System.Convert.ToDouble(value), 0, 0);
case "Right":
return new Thickness(0, 0, System.Convert.ToDouble(value), 0);
case "Buttom":
return new Thickness(0, 0, 0, System.Convert.ToDouble(value));
case "LeftTop":
return new Thickness(System.Convert.ToDouble(value), System.Convert.ToDouble(value), 0, 0);
case "LeftButtom":
return new Thickness(System.Convert.ToDouble(value), 0, 0, System.Convert.ToDouble(value));
case "RightTop":
return new Thickness(0, System.Convert.ToDouble(value), System.Convert.ToDouble(value), 0);
case "RigthButtom":
return new Thickness(0, 0, System.Convert.ToDouble(value), System.Convert.ToDouble(value));
case "LeftRight":
return new Thickness(System.Convert.ToDouble(value), 0, System.Convert.ToDouble(value), 0);
case "TopButtom":
return new Thickness(0, System.Convert.ToDouble(value), 0, System.Convert.ToDouble(value));
default:
return new Thickness(System.Convert.ToDouble(value));
}
}
return new Thickness(System.Convert.ToDouble(value));
}
return new Thickness(0);
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static DateTime ToDateTime(this object s)
{
if (s == null || s == DBNull.Value)
return DateTime.MinValue;
DateTime.TryParse(s.ToString(), out DateTime result);
return result;
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static bool ToBool(this object s)
{
if (s == null)
return false;
s = s.ToString().ToLower();
if (s.Equals(1) || s.Equals("1") || s.Equals("true") || s.Equals("是") || s.Equals("yes"))
return true;
if (s.Equals(0) || s.Equals("0") || s.Equals("false") || s.Equals("否") || s.Equals("no"))
return false;
Boolean.TryParse(s.ToString(), out bool result);
return result;
}
19
Source : GuidTypeHandler.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public override Guid Parse(object value)
{
return Guid.Parse(value.ToString());
}
19
Source : ExpressionResolver.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private static void ResolveMethodForContains(QueryBody queryBody, MethodCallExpression exp, StringBuilder sqlBuilder, IQueryParameters parameters)
{
if (exp.Object is MemberExpression objExp)
{
#region ==字符串类型的Contains方法==
if (objExp.Type.IsString())
{
sqlBuilder.Append(queryBody.GetColumnName(objExp));
string value;
if (exp.Arguments[0] is ConstantExpression c)
{
value = c.Value!.ToString();
}
else
{
value = ResolveDynamicInvoke(exp.Arguments[0]).ToString();
}
sqlBuilder.Append(" LIKE ");
AppendValue(queryBody, $"%{value}%", sqlBuilder, parameters);
return;
}
#endregion
if (objExp.Type.IsGenericType)
{
var columnName = queryBody.GetColumnName(exp.Arguments[0]);
ResolveInForGeneric(sqlBuilder, columnName, objExp, (exp.Arguments[0] as MemberExpression)!.Type);
}
return;
}
#region ==数组、泛型类型的Contains方法==
if (exp.Arguments[1] is MemberExpression argExp1)
{
var columnName = queryBody.GetColumnName(argExp1);
ResolveInForGeneric(sqlBuilder, columnName, exp.Arguments[0], argExp1.Type);
}
#endregion
}
19
Source : ExpressionResolver.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private static void ResolveInForGeneric(StringBuilder sqlBuilder, string columnName, Expression exp, Type valueType, bool notContainer = false)
{
var value = ResolveDynamicInvoke(exp);
var isValueType = false;
var list = new List<string>();
if (valueType.IsEnum)
{
isValueType = true;
var valueList = (IEnumerable)value;
if (valueList != null)
{
foreach (var c in valueList)
{
list.Add(Enum.Parse(valueType, c.ToString()!).ToInt().ToString());
}
}
}
else
{
var typeName = valueType.Name;
switch (typeName)
{
case "Guid":
if (value is IEnumerable<Guid> guidValues)
{
foreach (var c in guidValues)
{
list.Add(c.ToString());
}
}
break;
case "DateTime":
if (value is IEnumerable<DateTime> dateTimeValues)
{
foreach (var c in dateTimeValues)
{
list.Add(c.ToString("yyyy-MM-dd HH:mm:ss"));
}
}
break;
case "Byte":
isValueType = true;
if (value is IEnumerable<byte> byteValues)
{
foreach (var c in byteValues)
{
list.Add(c.ToString(CultureInfo.InvariantCulture));
}
}
break;
case "Char":
if (value is IEnumerable<char> charValues)
{
foreach (var c in charValues)
{
list.Add(c.ToString());
}
}
break;
case "Int16":
isValueType = true;
if (value is IEnumerable<short> shortValues)
{
foreach (var c in shortValues)
{
list.Add(c.ToString());
}
}
break;
case "Int32":
isValueType = true;
if (value is IEnumerable<int> intValues)
{
foreach (var c in intValues)
{
list.Add(c.ToString());
}
}
break;
case "Int64":
isValueType = true;
if (value is IEnumerable<long> longValues)
{
foreach (var c in longValues)
{
list.Add(c.ToString());
}
}
break;
case "Double":
isValueType = true;
if (value is IEnumerable<double> doubleValues)
{
foreach (var c in doubleValues)
{
list.Add(c.ToString(CultureInfo.InvariantCulture));
}
}
break;
case "Single":
isValueType = true;
if (value is IEnumerable<float> floatValues)
{
foreach (var c in floatValues)
{
list.Add(c.ToString(CultureInfo.InvariantCulture));
}
}
break;
case "Decimal":
isValueType = true;
if (value is IEnumerable<decimal> decimalValues)
{
foreach (var c in decimalValues)
{
list.Add(c.ToString(CultureInfo.InvariantCulture));
}
}
break;
}
}
if (list!.Count < 1)
return;
sqlBuilder.Append(columnName);
sqlBuilder.Append(notContainer ? " NOT IN (" : " IN (");
//值类型不带引号
if (isValueType)
{
for (var i = 0; i < list.Count; i++)
{
sqlBuilder.AppendFormat("{0}", list[i]);
if (i != list.Count - 1)
{
sqlBuilder.Append(",");
}
}
}
else
{
for (var i = 0; i < list.Count; i++)
{
sqlBuilder.AppendFormat("'{0}'", list[i].Replace("'", "''"));
if (i != list.Count - 1)
{
sqlBuilder.Append(",");
}
}
}
sqlBuilder.Append(")");
}
19
Source : MemoryCacheHandler.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private List<string> GetAllKeys()
{
const BindingFlags flags = BindingFlags.Instance | BindingFlags.NonPublic;
var entries = _cache.GetType().GetField("_entries", flags).GetValue(_cache);
var cacheItems = entries as IDictionary;
var keys = new List<string>();
if (cacheItems == null) return keys;
foreach (DictionaryEntry cacheItem in cacheItems)
{
keys.Add(cacheItem.Key.ToString());
}
return keys;
}
19
Source : DefaultRedisSerializer.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public string Serialize<T>(T value)
{
if (IsNotBaseType<T>())
{
return JsonSerializer.Serialize(value);
}
return value.ToString();
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static float ToFloat(this object s, int? decimals = null)
{
if (s == null || s == DBNull.Value)
return 0f;
float.TryParse(s.ToString(), out float result);
if (decimals == null)
return result;
return (float)Math.Round(result, decimals.Value);
}
19
Source : SqliteDbAdapter.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private string Mapper_DatetimeToString(string columnName, object arg0)
{
var format = arg0.ToString();
format = format!.Replace("yyyy", "%Y")
.Replace("yy", "%Y")
.Replace("MM", "%m")
.Replace("dd", "%d")
.Replace("hh", "%H")
.Replace("mm", "%M")
.Replace("ss", "%S");
return $"STRFTIME('{format}',{columnName})";
}
19
Source : ExpressionResolver.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private static void ResolveMethodForStartsWith(QueryBody queryBody, MethodCallExpression exp, StringBuilder sqlBuilder, IQueryParameters parameters)
{
if (exp.Object is MemberExpression objExp)
{
sqlBuilder.Append(queryBody.GetColumnName(objExp));
string value;
if (exp.Arguments[0] is ConstantExpression c)
{
value = c.Value!.ToString();
}
else
{
value = ResolveDynamicInvoke(exp.Arguments[0]).ToString();
}
sqlBuilder.Append(" LIKE ");
AppendValue(queryBody, $"{value}%", sqlBuilder, parameters);
}
}
19
Source : IndexOfObjectsInputSource.cs
with MIT License
from 1996v
with MIT License
from 1996v
public int CurrentArrayIndex()
{
Entry entry = entries.Current;
if (entry.ValueIsMapKey)
{
BssomSerializationOperationException.InputTypeAndDataIsInconsistent(entry.Value.ToString(), "Array");
}
return (int)entry.Value;
}
19
Source : BssomValue.cs
with MIT License
from 1996v
with MIT License
from 1996v
public override string ToString()
{
return RawValue.ToString();
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static int ToInt(this object s, bool round = false)
{
if (s == null || s == DBNull.Value)
return 0;
if (s is bool b)
return b ? 1 : 0;
if (int.TryParse(s.ToString(), out int result))
return result;
if (s.GetType().IsEnum)
{
return (int)s;
}
var f = s.ToFloat();
return round ? Convert.ToInt32(f) : (int)f;
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static long ToLong(this object s)
{
if (s == null || s == DBNull.Value)
return 0L;
long.TryParse(s.ToString(), out long result);
return result;
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static double ToDouble(this object s, int? digits = null)
{
if (s == null || s == DBNull.Value)
return 0d;
double.TryParse(s.ToString(), out double result);
if (digits == null)
return result;
return Math.Round(result, digits.Value);
}
19
Source : CommonExtensions.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
public static decimal ToDecimal(this object s, int? decimals = null)
{
if (s == null || s == DBNull.Value) return 0m;
decimal.TryParse(s.ToString(), out decimal result);
if (decimals == null)
return result;
return Math.Round(result, decimals.Value);
}
19
Source : MySqlDbAdapter.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private string Mapper_DatetimeToString(string columnName, object arg0)
{
var format = arg0.ToString();
format = format!.Replace("yyyy", "%Y")
.Replace("yy", "%y")
.Replace("MM", "%m")
.Replace("dd", "%d")
.Replace("hh", "%k")
.Replace("mm", "%i")
.Replace("ss", "%s");
return $"DATE_FORMAT({columnName},'{format}')";
}
19
Source : ExpressionResolver.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private static void ResolveMethodForEndsWith(QueryBody queryBody, MethodCallExpression exp, StringBuilder sqlBuilder, IQueryParameters parameters)
{
if (exp.Object is MemberExpression objExp)
{
sqlBuilder.Append(queryBody.GetColumnName(objExp));
string value;
if (exp.Arguments[0] is ConstantExpression c)
{
value = c.Value!.ToString();
}
else
{
value = ResolveDynamicInvoke(exp.Arguments[0]).ToString();
}
sqlBuilder.Append(" LIKE ");
AppendValue(queryBody, $"%{value}", sqlBuilder, parameters);
}
}
19
Source : ExpressionResolver.cs
with MIT License
from 17MKH
with MIT License
from 17MKH
private static void ResolveMethodForEquals(QueryBody queryBody, MethodCallExpression exp, LambdaExpression fullLambda, StringBuilder sqlBuilder, IQueryParameters parameters)
{
if (exp.Object is MemberExpression objExp)
{
sqlBuilder.Append(queryBody.GetColumnName(objExp));
sqlBuilder.Append(" = ");
var arg = exp.Arguments[0];
switch (arg.NodeType)
{
case ExpressionType.Constant:
AppendValue(queryBody, (arg as ConstantExpression)!.Value!.ToString(), sqlBuilder, parameters);
break;
case ExpressionType.MemberAccess:
ResolveMember(queryBody, arg as MemberExpression, fullLambda, sqlBuilder, parameters);
break;
case ExpressionType.Convert:
Resolve(queryBody, (arg as UnaryExpression)!.Operand, fullLambda, sqlBuilder, parameters);
break;
default:
AppendValue(queryBody, ResolveDynamicInvoke(arg).ToString(), sqlBuilder, parameters);
break;
}
}
}
19
Source : IndexOfObjectsInputSource.cs
with MIT License
from 1996v
with MIT License
from 1996v
public object CurrentMapKey()
{
Entry entry = entries.Current;
if (!entry.ValueIsMapKey)
{
BssomSerializationOperationException.InputTypeAndDataIsInconsistent(entry.Value.ToString(), "Map");
}
return entry.Value;
}
19
Source : BssomSerializationOperationException.cs
with MIT License
from 1996v
with MIT License
from 1996v
internal static BssomSerializationOperationException BssomMapIsNull(object key)
{
return new BssomSerializationOperationException(SerializationErrorCode.OperationObjectIsNull, $"BssomMap[{key.ToString()}] is null");
}
19
Source : Program.cs
with MIT License
from 1upD
with MIT License
from 1upD
private static object HandleParseError(object errs)
{
log.Error(string.Format("Parsing error: {0}", errs.ToString()));
return null;
}
See More Examples