本文整理汇总了C#中db.Database.GetAccount方法的典型用法代码示例。如果您正苦于以下问题:C# Database.GetAccount方法的具体用法?C# Database.GetAccount怎么用?C# Database.GetAccount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类db.Database
的用法示例。
在下文中一共展示了Database.GetAccount方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: HandleRequest
public void HandleRequest(HttpListenerContext context)
{
NameValueCollection query;
using (StreamReader rdr = new StreamReader(context.Request.InputStream))
query = HttpUtility.ParseQueryString(rdr.ReadToEnd());
using (var db = new Database())
{
var acc = db.GetAccount(int.Parse(query["accountId"]));
var chr = db.LoadCharacter(acc, int.Parse(query["charId"]));
var cmd = db.CreateQuery();
cmd.CommandText = @"SELECT time, killer, firstBorn FROM death WHERE [email protected] AND [email protected];";
cmd.Parameters.AddWithValue("@accId", query["accountId"]);
cmd.Parameters.AddWithValue("@charId", query["charId"]);
int time;
string killer;
bool firstBorn;
using (var rdr = cmd.ExecuteReader())
{
rdr.Read();
time = Database.DateTimeToUnixTimestamp(rdr.GetDateTime("time"));
killer = rdr.GetString("killer");
firstBorn = rdr.GetBoolean("firstBorn");
}
using (StreamWriter wtr = new StreamWriter(context.Response.OutputStream))
wtr.Write(chr.FameStats.Serialize(acc, chr, time, killer, firstBorn));
}
}
示例2: HandleRequest
protected override void HandleRequest()
{
using (Database db = new Database())
{
Account acc = db.GetAccount(Query["accountId"], Program.GameData);
Char chr = db.LoadCharacter(acc, int.Parse(Query["charId"]));
MySqlCommand cmd = db.CreateQuery();
cmd.CommandText = @"SELECT time, killer, firstBorn FROM death WHERE [email protected] AND [email protected];";
cmd.Parameters.AddWithValue("@accId", Query["accountId"]);
cmd.Parameters.AddWithValue("@charId", Query["charId"]);
int time;
string killer;
bool firstBorn;
using (MySqlDataReader rdr = cmd.ExecuteReader())
{
rdr.Read();
time = Database.DateTimeToUnixTimestamp(rdr.GetDateTime("time"));
killer = rdr.GetString("killer");
firstBorn = rdr.GetBoolean("firstBorn");
}
using (StreamWriter wtr = new StreamWriter(Context.Response.OutputStream))
wtr.Write(chr.FameStats.Serialize(Program.GameData, acc, chr, time, killer, firstBorn));
}
}
示例3: HandleRequest
public override void HandleRequest(HttpListenerContext context)
{
NameValueCollection query;
using (var rdr = new StreamReader(context.Request.InputStream))
query = HttpUtility.ParseQueryString(rdr.ReadToEnd());
if (query.AllKeys.Length == 0)
{
string queryString = string.Empty;
string currUrl = context.Request.RawUrl;
int iqs = currUrl.IndexOf('?');
if (iqs >= 0)
{
query =
HttpUtility.ParseQueryString((iqs < currUrl.Length - 1)
? currUrl.Substring(iqs + 1)
: String.Empty);
}
}
using (var db = new Database(Program.Settings.GetValue("conn")))
{
Account acc = db.GetAccount(int.Parse(query["accountId"]));
Char chr = db.LoadCharacter(acc, int.Parse(query["charId"]));
MySqlCommand cmd = db.CreateQuery();
cmd.CommandText = @"SELECT time, killer, firstBorn FROM death WHERE [email protected] AND [email protected];";
cmd.Parameters.AddWithValue("@accId", query["accountId"]);
cmd.Parameters.AddWithValue("@charId", query["charId"]);
int time;
string killer;
bool firstBorn;
using (MySqlDataReader rdr = cmd.ExecuteReader())
{
rdr.Read();
time = Database.DateTimeToUnixTimestamp(rdr.GetDateTime("time"));
killer = rdr.GetString("killer");
firstBorn = rdr.GetBoolean("firstBorn");
}
using (var wtr = new StreamWriter(context.Response.OutputStream))
wtr.Write(chr.FameStats.Serialize(Program.GameData, acc, chr, time, killer, firstBorn));
}
}
示例4: HandleRequest
protected override void HandleRequest()
{
using (var db = new Database())
{
var acc = db.GetAccount(int.Parse(Query["accountId"]));
var chr = db.LoadCharacter(acc, int.Parse(Query["charId"]));
var cmd = db.CreateQuery();
cmd.CommandText = "SELECT time, killer, firstBorn FROM death WHERE [email protected] AND [email protected];";
int time; string killer; bool firstBorn;
using (var rdr = cmd.ExecuteReader())
{
rdr.Read();
time = Database.DateTimeToUnixTimestamp(rdr.GetDateTime("time"));
killer = rdr.GetString("killer");
firstBorn = rdr.GetBoolean("firstBorn");
}
WriteLine(chr.FameStats.Serialize(acc, chr, time, killer, firstBorn));
}
}
示例5: GuildRemove
public void GuildRemove(RealmTime t, GuildRemovePacket pkt)
{
var pname = pkt.Name;
try
{
var p = RealmManager.FindPlayer(pname);
if (p != null && p.Guild == Guild)
{
var db = new Database();
var g = db.ChangeGuild(p.Client.Account, p.Client.Account.Guild.Id, p.GuildRank, p.Client.Account.Guild.Fame, true);
p.Guild = "";
p.GuildRank = 0;
p.Client.Account.Guild = g;
p.UpdateCount++;
if (p != this)
{
p.SendGuild("You have been kicked from the guild.");
foreach (var pl in RealmManager.GuildMembersOf(Guild))
pl.SendGuild(p.nName + " has been kicked from the guild by " + nName + ".");
}
else
{
p.SendGuild("You have left the guild.");
foreach (var pl in RealmManager.GuildMembersOf(Guild))
pl.SendGuild(nName + " has left the guild.");
}
}
else
{
try
{
var db = new Database();
var other = db.GetAccount(pname);
if (other.Guild.Name == Guild)
{
db.ChangeGuild(other, other.Guild.Id, other.Guild.Rank, other.Guild.Fame, true);
foreach (var pl in RealmManager.GuildMembersOf(Guild))
pl.SendGuild(pname + " has been kicked from the guild by " + nName + ".");
}
}
catch (Exception e)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = e.Message
});
}
}
}
catch (Exception e)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = e.Message
});
}
}
示例6: ChangeGuildRank
public void ChangeGuildRank(RealmTime t, ChangeGuildRankPacket pkt)
{
var pname = pkt.Name;
var rank = pkt.GuildRank;
if (GuildRank >= 20)
{
var other = RealmManager.FindPlayer(pname);
if (other != null && other.Guild == Guild)
{
var rankname = ResolveRankName(other.GuildRank);
var rankname2 = ResolveRankName(rank);
other.GuildRank = rank;
other.Client.Account.Guild.Rank = rank;
new Database().ChangeGuild(other.Client.Account, other.Client.Account.Guild.Id, other.GuildRank, other.Client.Account.Guild.Fame, false);
other.UpdateCount++;
foreach (var p in RealmManager.GuildMembersOf(Guild))
{
p.Client.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "",
Recipient = "*Guild*",
Text = other.Client.Account.Name + " has been demoted to " + rankname2 + "."
});
}
}
else
{
try
{
var db = new Database();
var acc = db.GetAccount(pname);
if (acc.Guild.Name == Guild)
{
var rankname = ResolveRankName(acc.Guild.Rank);
var rankname2 = ResolveRankName(rank);
db.ChangeGuild(acc, acc.Guild.Id, rank, acc.Guild.Fame, false);
foreach (var p in RealmManager.GuildMembersOf(Guild))
{
p.Client.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "",
Recipient = "*Guild*",
Text = acc.Name + " has been promoted to " + rankname2 + "."
});
}
}
else
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = "You can only change a player in your guild."
});
}
}
catch (Exception e)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "*Error*",
Text = e.Message
});
}
}
}
else
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Stars = -1,
Name = "",
Text = "Members and initiates cannot promote!"
});
}
}
示例7: ChangeRank
public void ChangeRank(GuildRankChangePacket pkt)
{
using(Database dbx = new Database())
{
if (psr.Account.Guild.Name == "")
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = "You don't have a guild!"
});
return;
}
switch (psr.Account.Guild.Rank)
{
case 0:
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = "Only officers, leaders and founders can promote/demote other members!"
});
return;
case 10:
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = "Only officers, leaders and founders can promote/demote other members!"
});
return;
case 20:
switch (pkt.Rank)
{
case 0:
dbx.ChangeGuildRank(pkt.Name, pkt.Rank);
foreach (var i in RealmManager.Clients.Values)
{
if (i.Account.Guild.Name == psr.Account.Guild.Name && i.Account.Guild.Id == psr.Account.Guild.Id)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = dbx.ChangeRankTextBuilder(psr.Account, dbx.GetAccount(pkt.Name), pkt.Rank)
});
}
}
return;
case 10:
if (dbx.GetAccount(pkt.Name).Guild.Rank == psr.Account.Guild.Rank)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = "You can't demote members with your same rank!"
});
return;
}
dbx.ChangeGuildRank(pkt.Name, pkt.Rank);
foreach (var i in RealmManager.Clients.Values)
{
if (i.Account.Guild.Name == psr.Account.Guild.Name && i.Account.Guild.Id == psr.Account.Guild.Id)
{
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = dbx.ChangeRankTextBuilder(psr.Account, dbx.GetAccount(pkt.Name), pkt.Rank)
});
}
}
return;
case 20:
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = "Only leaders and founders can promote other members to officers!"
});
return;
case 30:
psr.SendPacket(new TextPacket()
{
BubbleTime = 0,
Name = "",
Stars = -1,
Text = "Only leaders and founders can promote other members to leaders!"
});
return;
case 40:
//.........这里部分代码省略.........
示例8: RemoveFromGuild
public void RemoveFromGuild(GuildRemovePacket pkt)
{
try
{
if (pkt.Name != psr.Account.Name)
{
if (psr.Account.Guild == null || psr.Account.Guild.Name == "")
{
psr.SendPacket(new TextPacket()
{
Name = "",
Stars = -1,
BubbleTime = 0,
Text = "You don't have a guild!"
});
return;
}
using (Database dbx = new Database())
{
var cmd = dbx.CreateQuery();
cmd.CommandText = "UPDATE accounts SET guild='0', guildRank='-1' WHERE [email protected]";
cmd.Parameters.AddWithValue("@id", dbx.GetAccount(pkt.Name).AccountId);
if (cmd.ExecuteNonQuery() == 0)
{
psr.SendPacket(new TextPacket()
{
Name = "",
Stars = -1,
BubbleTime = 0,
Text = "Unable to remove guild from account data!"
});
return;
}
else
{
var members = dbx.GetGuildMembers(psr.Account);
if (!members.Contains(dbx.GetAccount(pkt.Name).AccountId))
{
psr.SendPacket(new TextPacket()
{
Name = "",
Stars = -1,
BubbleTime = 0,
Text = "Unable to find account in guild's members list!"
});
return;
}
members.Remove(dbx.GetAccount(pkt.Name).AccountId);
var newmembers = Utils.GetCommaSepString<int>(members.ToArray());
if (members.Count == 0)
{
if (dbx.RemoveGuild(psr.Account) == false)
{
psr.SendPacket(new TextPacket()
{
Name = "",
Stars = -1,
BubbleTime = 0,
Text = "Unable to delete guild!"
});
return;
}
}
else
{
if (dbx.RemoveFromGuildMembers(psr.Account) == false)
{
psr.SendPacket(new TextPacket()
{
Name = "",
Stars = -1,
BubbleTime = 0,
Text = "Unable to remove account from guild's members list!"
});
return;
}
}
foreach (var i in RealmManager.Clients.Values)
{
if (i.Account.Guild.Name == psr.Account.Guild.Name && i.Account.Guild.Id == psr.Account.Guild.Id)
{
i.SendPacket(new TextPacket()
{
Name = "",
BubbleTime = 0,
Stars = -1,
Text = pkt.Name + " has been removed from the guild by " + psr.Account.Name + "."
});
}
}
psr.Account.Guild = new Guild()
{
Id = 0,
Name = "",
Rank = -1
};
UpdateCount++;
return;
}
}
//.........这里部分代码省略.........
示例9: GetAccount
public Account GetAccount(XmlData data)
{
using (var db = new Database())
return db.GetAccount(accId, data);
}
示例10: HandleRequest
protected override void HandleRequest()
{
byte[] status = null;
string span = "";
switch (Query["timespan"])
{
case "week":
span = "(time >= DATE_SUB(NOW(), INTERVAL 1 WEEK))";
break;
case "month":
span = "(time >= DATE_SUB(NOW(), INTERVAL 1 MONTH))";
break;
case "all":
span = "TRUE";
break;
default:
status = Encoding.UTF8.GetBytes("<Error>Invalid fame list</Error>");
break;
}
string ac = "FALSE";
if (Query["accountId"] != null)
ac = "([email protected] AND [email protected])";
if (status == null)
{
XmlDocument doc = new XmlDocument();
XmlElement root = doc.CreateElement("FameList");
XmlAttribute spanAttr = doc.CreateAttribute("timespan");
spanAttr.Value = Query["timespan"];
root.Attributes.Append(spanAttr);
doc.AppendChild(root);
using (Database db = new Database())
{
MySqlCommand cmd = db.CreateQuery();
cmd.CommandText = @"SELECT * FROM death WHERE " + span + @" OR " + ac +
@" ORDER BY totalFame DESC LIMIT 20;";
if (Query["accountId"] != null)
{
cmd.Parameters.AddWithValue("@accId", Query["accountId"]);
cmd.Parameters.AddWithValue("@charId", Query["charId"]);
}
using (MySqlDataReader rdr = cmd.ExecuteReader())
{
while (rdr.Read())
{
XmlElement elem = doc.CreateElement("FameListElem");
int accId = rdr.GetInt32("accId");
XmlAttribute accIdAttr = doc.CreateAttribute("accountId");
accIdAttr.Value = accId.ToString();
elem.Attributes.Append(accIdAttr);
XmlAttribute chrIdAttr = doc.CreateAttribute("charId");
chrIdAttr.Value = rdr.GetInt32("chrId").ToString();
elem.Attributes.Append(chrIdAttr);
root.AppendChild(elem);
XmlElement nameElem = doc.CreateElement("Name");
nameElem.InnerText = String.Empty;
elem.AppendChild(nameElem);
XmlElement objTypeElem = doc.CreateElement("ObjectType");
objTypeElem.InnerText = rdr.GetString("charType");
elem.AppendChild(objTypeElem);
XmlElement tex1Elem = doc.CreateElement("Tex1");
tex1Elem.InnerText = rdr.GetString("tex1");
elem.AppendChild(tex1Elem);
XmlElement tex2Elem = doc.CreateElement("Tex2");
tex2Elem.InnerText = rdr.GetString("tex2");
elem.AppendChild(tex2Elem);
XmlElement skinElem = doc.CreateElement("Texture");
skinElem.InnerText = rdr.GetString("skin");
elem.AppendChild(skinElem);
XmlElement equElem = doc.CreateElement("Equipment");
equElem.InnerText = rdr.GetString("items");
elem.AppendChild(equElem);
XmlElement fameElem = doc.CreateElement("TotalFame");
fameElem.InnerText = rdr.GetString("totalFame");
elem.AppendChild(fameElem);
}
}
XmlNodeList list = doc.SelectNodes("/FameList/FameListElem");
foreach (XmlNode node in list)
{
foreach (XmlNode xnode in node.ChildNodes)
{
if (xnode.Name == "Name")
xnode.InnerText = db.GetAccount(node.Attributes["accountId"].Value, Program.GameData).Name;
}
}
}
XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
using (XmlWriter wtr = XmlWriter.Create(Context.Response.OutputStream))
//.........这里部分代码省略.........