📄 core.cs
字号:
DataView dvtopicindex = lda.dvTopicIndex;
string tifilter = "TopicName LIKE '*" + keyword + "*' and ReplyDateTime >= '" + begintime + "' and ReplyDateTime <= '" + endtime + "'";
filter = "Content LIKE '*" + keyword + "*' and PostDateTime >= '" + begintime + "' and PostDateTime <= '" + endtime + "'";
if(!seachall)
{
filter += " and RoomId = '" + room.ToString() + "' and Block = '" + block.ToString() + "'";
tifilter += " and RoomId = '" + room.ToString() + "' and Block = '" + block.ToString() + "'";
}
dvissue.RowFilter = filter;
dvtopic.RowFilter = tifilter;
DataTable dt = CreateTopicIndexTable();
for(int i = 0; i < dvtopic.Count; i++)
{
dvtopicindex.RowFilter = "TopicId = '" + dvtopic[i]["TopicId"].ToString() + "'";
if(!HasThisTopic(dvtopic[i]["TopicId"].ToString(),dt))
{
DataRow dr = dt.NewRow();
dr["TopicId"] = dvtopicindex[0]["TopicId"].ToString();
dr["TopicName"] = dvtopicindex[0]["TopicName"].ToString();
dr["PostUserName"] = dvtopicindex[0]["PostUserName"].ToString();
dr["ReplyNum"] = (int)dvtopicindex[0]["ReplyNum"];
dr["ReplyDateTime"] = dvtopicindex[0]["ReplyDateTime"].ToString();
dr["Point"] = (int)dvtopicindex[0]["Point"];
if(dvtopicindex[0]["endstate"].ToString() == "False")
dr["endstate"] = false;
else
dr["endstate"] = true;
dr["RoomId"] = dvtopicindex[0]["RoomId"].ToString();
dr["Block"] = dvtopicindex[0]["Block"].ToString();
dr["TopicStatus"] = (int)dvtopicindex[0]["TopicStatus"];
if(dvtopicindex[0]["HasSeen"].ToString() == "True")
dr["HasSeen"] = true;
else
dr["HasSeen"] = false;
if(dvtopicindex[0]["Favor"].ToString() == "True")
dr["Favor"] = true;
else
dr["Favor"] = false;
dr["Usage1"] = dvtopicindex[0]["Usage1"].ToString();
dr["Usage2"] = dvtopicindex[0]["Usage2"].ToString();
dr["Usage3"] = dvtopicindex[0]["Usage3"].ToString();
dt.Rows.Add(dr);
}
}
for(int i = 0; i < dvissue.Count; i++)
{
dvtopicindex.RowFilter = "TopicId = '" + dvissue[i]["TopicId"].ToString() + "'";
if(!HasThisTopic(dvissue[i]["TopicId"].ToString(),dt))
{
DataRow dr = dt.NewRow();
dr["TopicId"] = dvtopicindex[0]["TopicId"].ToString();
dr["TopicName"] = dvtopicindex[0]["TopicName"].ToString();
dr["PostUserName"] = dvtopicindex[0]["PostUserName"].ToString();
dr["ReplyNum"] = (int)dvtopicindex[0]["ReplyNum"];
dr["ReplyDateTime"] = dvtopicindex[0]["ReplyDateTime"].ToString();
dr["Point"] = (int)dvtopicindex[0]["Point"];
if(dvtopicindex[0]["endstate"].ToString() == "False")
dr["endstate"] = false;
else
dr["endstate"] = true;
dr["RoomId"] = dvtopicindex[0]["RoomId"].ToString();
dr["Block"] = dvtopicindex[0]["Block"].ToString();
dr["TopicStatus"] = (int)dvtopicindex[0]["TopicStatus"];
if(dvtopicindex[0]["HasSeen"].ToString() == "True")
dr["HasSeen"] = true;
else
dr["HasSeen"] = false;
if(dvtopicindex[0]["Favor"].ToString() == "True")
dr["Favor"] = true;
else
dr["Favor"] = false;
dr["Usage1"] = dvtopicindex[0]["Usage1"].ToString();
dr["Usage2"] = dvtopicindex[0]["Usage2"].ToString();
dr["Usage3"] = dvtopicindex[0]["Usage3"].ToString();
dt.Rows.Add(dr);
}
}
if(seachreply)
{
dvreply.RowFilter = filter;
for(int i = 0; i < dvreply.Count; i++)
{
dvtopicindex.RowFilter = "TopicId = '" + dvreply[i]["TopicId"].ToString() + "'";
if(!HasThisTopic(dvreply[i]["TopicId"].ToString(),dt))
{
DataRow dr = dt.NewRow();
dr["TopicId"] = dvtopicindex[0]["TopicId"].ToString();
dr["TopicName"] = dvtopicindex[0]["TopicName"].ToString();
dr["PostUserName"] = dvtopicindex[0]["PostUserName"].ToString();
dr["ReplyNum"] = (int)dvtopicindex[0]["ReplyNum"];
dr["ReplyDateTime"] = dvtopicindex[0]["ReplyDateTime"].ToString();
dr["Point"] = (int)dvtopicindex[0]["Point"];
if(dvtopicindex[0]["endstate"].ToString() == "False")
dr["endstate"] = false;
else
dr["endstate"] = true;
dr["RoomId"] = dvtopicindex[0]["RoomId"].ToString();
dr["Block"] = dvtopicindex[0]["Block"].ToString();
dr["TopicStatus"] = (int)dvtopicindex[0]["TopicStatus"];
if(dvtopicindex[0]["HasSeen"].ToString() == "True")
dr["HasSeen"] = true;
else
dr["HasSeen"] = false;
if(dvtopicindex[0]["Favor"].ToString() == "True")
dr["Favor"] = true;
else
dr["Favor"] = false;
dr["Usage1"] = dvtopicindex[0]["Usage1"].ToString();
dr["Usage2"] = dvtopicindex[0]["Usage2"].ToString();
dr["Usage3"] = dvtopicindex[0]["Usage3"].ToString();
dt.Rows.Add(dr);
}
}
}
dt.DefaultView.Sort = "ReplyDateTime Desc";
dataView = dt.DefaultView;
break;
default ://作者
dvreply = lda.dvReply;
dvtopic = lda.dvTopicIndex;
tifilter = "PostUserName = '" + keyword + "' and ReplyDateTime >= '" + begintime + "' and ReplyDateTime <= '" + endtime + "'";
dvtopicindex = lda.dvTopicIndex;
filter = "PostUserName = '" + keyword + "' and PostDateTime >= '" + begintime + "' and PostDateTime <= '" + endtime + "'";
if(!seachall)
{
filter += " and RoomId = '" + room.ToString() + "' and Block = '" + block.ToString() + "'";
tifilter += " and RoomId = '" + room.ToString() + "' and Block = '" + block.ToString() + "'";
}
dvtopic.RowFilter = tifilter;
dt = CreateTopicIndexTable();
for(int i = 0; i < dvtopic.Count; i++)
{
dvtopicindex.RowFilter = "TopicId = '" + dvtopic[i]["TopicId"].ToString() + "'";
if(!HasThisTopic(dvtopic[i]["TopicId"].ToString(),dt))
{
DataRow dr = dt.NewRow();
dr["TopicId"] = dvtopicindex[0]["TopicId"].ToString();
dr["TopicName"] = dvtopicindex[0]["TopicName"].ToString();
dr["PostUserName"] = dvtopicindex[0]["PostUserName"].ToString();
dr["ReplyNum"] = (int)dvtopicindex[0]["ReplyNum"];
dr["ReplyDateTime"] = dvtopicindex[0]["ReplyDateTime"].ToString();
dr["Point"] = (int)dvtopicindex[0]["Point"];
if(dvtopicindex[0]["endstate"].ToString() == "False")
dr["endstate"] = false;
else
dr["endstate"] = true;
dr["RoomId"] = dvtopicindex[0]["RoomId"].ToString();
dr["Block"] = dvtopicindex[0]["Block"].ToString();
dr["TopicStatus"] = (int)dvtopicindex[0]["TopicStatus"];
if(dvtopicindex[0]["HasSeen"].ToString() == "True")
dr["HasSeen"] = true;
else
dr["HasSeen"] = false;
if(dvtopicindex[0]["Favor"].ToString() == "True")
dr["Favor"] = true;
else
dr["Favor"] = false;
dr["Usage1"] = dvtopicindex[0]["Usage1"].ToString();
dr["Usage2"] = dvtopicindex[0]["Usage2"].ToString();
dr["Usage3"] = dvtopicindex[0]["Usage3"].ToString();
dt.Rows.Add(dr);
}
}
if(seachreply)
{
dvreply.RowFilter = filter;
for(int i = 0; i < dvreply.Count; i++)
{
dvtopicindex.RowFilter = "TopicId = '" + dvreply[i]["TopicId"].ToString() + "'";
if(!HasThisTopic(dvreply[i]["TopicId"].ToString(),dt))
{
DataRow dr = dt.NewRow();
dr["TopicId"] = dvtopicindex[0]["TopicId"].ToString();
dr["TopicName"] = dvtopicindex[0]["TopicName"].ToString();
dr["PostUserName"] = dvtopicindex[0]["PostUserName"].ToString();
dr["ReplyNum"] = (int)dvtopicindex[0]["ReplyNum"];
dr["ReplyDateTime"] = dvtopicindex[0]["ReplyDateTime"].ToString();
dr["Point"] = (int)dvtopicindex[0]["Point"];
if(dvtopicindex[0]["endstate"].ToString() == "False")
dr["endstate"] = false;
else
dr["endstate"] = true;
dr["RoomId"] = dvtopicindex[0]["RoomId"].ToString();
dr["Block"] = dvtopicindex[0]["Block"].ToString();
dr["TopicStatus"] = (int)dvtopicindex[0]["TopicStatus"];
if(dvtopicindex[0]["HasSeen"].ToString() == "True")
dr["HasSeen"] = true;
else
dr["HasSeen"] = false;
if(dvtopicindex[0]["Favor"].ToString() == "True")
dr["Favor"] = true;
else
dr["Favor"] = false;
dr["Usage1"] = dvtopicindex[0]["Usage1"].ToString();
dr["Usage2"] = dvtopicindex[0]["Usage2"].ToString();
dr["Usage3"] = dvtopicindex[0]["Usage3"].ToString();
dt.Rows.Add(dr);
}
}
}
dataView = dt.DefaultView;
break;
}
return dataView;
}
private DataTable CreateTopicIndexTable()
{
DataTable dt = new DataTable("TopicIndex");
dt.Columns.Add("TopicId",System.Type.GetType("System.String"));
dt.Columns.Add("TopicName",System.Type.GetType("System.String"));
dt.Columns.Add("PostUserName",System.Type.GetType("System.String"));
dt.Columns.Add("ReplyNum",System.Type.GetType("System.Int32"));
dt.Columns.Add("ReplyDateTime",System.Type.GetType("System.String"));
dt.Columns.Add("Point",System.Type.GetType("System.Int32"));
dt.Columns.Add("endstate",System.Type.GetType("System.Boolean"));
dt.Columns.Add("RoomId",System.Type.GetType("System.String"));
dt.Columns.Add("Block",System.Type.GetType("System.String"));
dt.Columns.Add("TopicStatus",System.Type.GetType("System.Int32"));
dt.Columns.Add("HasSeen",System.Type.GetType("System.Boolean"));
dt.Columns.Add("Favor",System.Type.GetType("System.Boolean"));
dt.Columns.Add("Usage1",System.Type.GetType("System.String"));
dt.Columns.Add("Usage2",System.Type.GetType("System.String"));
dt.Columns.Add("Usage3",System.Type.GetType("System.String"));
return dt;
}
private bool HasThisTopic(string TopicId, DataTable dt)
{
DataView dv = new DataView(dt);
dv.RowFilter = "TopicId = '" + TopicId + "'";
if(dv.Count != 0)
return true;
else
return false;
}
public void Reply(string Topicid, string xmlReply, string csdnname, string csdnpassword, string ReplyContent)
{
NameValueCollection nvc = new NameValueCollection();
nvc.Add("Topicid",Topicid);
nvc.Add("xmlReply",xmlReply);
nvc.Add("csdnname",csdnname);
nvc.Add("csdnpassword",csdnpassword);
nvc.Add("ReplyContent",ReplyContent);
rda.PostData("http://www.csdn.net/Expert/reply.asp",nvc, aspsessionid);
}
public void Post(string typestate, string Point, string TopicName, string Room, string Content)
{
NameValueCollection nvc = new NameValueCollection();
nvc.Add("typestate",typestate);
nvc.Add("Point",Point);
nvc.Add("TopicName",TopicName);
nvc.Add("Room",Room);
nvc.Add("Content",Content);
rda.PostData("http://www.csdn.net/Expert/PostNew_SQL.asp",nvc, aspsessionid);
}
public bool Login(string Name,string Password)
{
string header = rda.Logon("http://www.csdn.net/member/logon.asp",Name,Password);
if(header != null)
{
aspsessionid = header;
hasLogin = true;
return true;
}
else
{
hasLogin = false;
return false;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -