本文整理汇总了C#中CmsData.CMSDataContext.PeopleQuery方法的典型用法代码示例。如果您正苦于以下问题:C# CMSDataContext.PeopleQuery方法的具体用法?C# CMSDataContext.PeopleQuery怎么用?C# CMSDataContext.PeopleQuery使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CmsData.CMSDataContext
的用法示例。
在下文中一共展示了CMSDataContext.PeopleQuery方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Start
public ActionResult Start(int tag, int meetingid, bool addasmembers)
{
var runningtotals = new AddToOrgFromTagRun
{
Started = DateTime.Now,
Count = 0,
Processed = 0,
Orgid = meetingid
};
DbUtil.Db.AddToOrgFromTagRuns.InsertOnSubmit(runningtotals);
DbUtil.Db.SubmitChanges();
var host = Util.Host;
var qid = DbUtil.Db.FetchLastQuery().Id;
System.Threading.Tasks.Task.Factory.StartNew(() =>
{
System.Threading.Thread.CurrentThread.Priority = System.Threading.ThreadPriority.BelowNormal;
var Db = new CMSDataContext(Util.GetConnectionString(host));
IEnumerable<int> q = null;
if (tag == -1) // (last query)
q = Db.PeopleQuery(qid).Select(pp => pp.PeopleId);
else
q = from t in Db.TagPeople
where t.Id == tag
select t.PeopleId;
var pids = q.ToList();
var meeting = Db.Meetings.SingleOrDefault(mm => mm.MeetingId == meetingid);
var joindate = meeting.MeetingDate.Value.AddMinutes(-1);
var orgid = meeting.OrganizationId;
foreach (var pid in pids)
{
Db.Dispose();
Db = new CMSDataContext(Util.GetConnectionString(host));
if (addasmembers)
OrganizationMember.InsertOrgMembers(Db,
orgid, pid, MemberTypeCode.Member, joindate, null, false);
Db.RecordAttendance(meetingid, pid, true);
var r = Db.AddToOrgFromTagRuns.Where(mm => mm.Orgid == meetingid).OrderByDescending(mm => mm.Id).First();
r.Processed++;
r.Count = pids.Count;
Db.SubmitChanges();
}
var rr = Db.AddToOrgFromTagRuns.Where(mm => mm.Orgid == meetingid).OrderByDescending(mm => mm.Id).First();
rr.Completed = DateTime.Now;
Db.SubmitChanges();
Db.UpdateMainFellowship(orgid);
});
return Redirect("/AddAttendeesFromTag/Progress/" + meetingid);
}
示例2: Start
public ActionResult Start(int tag, int orgid, bool pending = false, bool prospect = false)
{
var runningtotals = new AddToOrgFromTagRun
{
Started = DateTime.Now,
Count = 0,
Processed = 0,
Orgid = orgid
};
DbUtil.Db.AddToOrgFromTagRuns.InsertOnSubmit(runningtotals);
DbUtil.Db.SubmitChanges();
var host = Util.Host;
var qid = DbUtil.Db.FetchLastQuery().Id;
System.Threading.Tasks.Task.Factory.StartNew(() =>
{
Thread.CurrentThread.Priority = ThreadPriority.BelowNormal;
var Db = new CMSDataContext(Util.GetConnectionString(host));
var cul = Db.Setting("Culture", "en-US");
Thread.CurrentThread.CurrentUICulture = new CultureInfo(cul);
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(cul);
IEnumerable<int> q = null;
if (tag == -1) // (last query)
q = Db.PeopleQuery(qid).Select(pp => pp.PeopleId);
else
q = from t in Db.TagPeople
where t.Id == tag
select t.PeopleId;
var pids = q.ToList();
foreach (var pid in pids)
{
Db.Dispose();
Db = new CMSDataContext(Util.GetConnectionString(host));
OrganizationMember.InsertOrgMembers(Db, orgid, pid,
prospect ? MemberTypeCode.Prospect : MemberTypeCode.Member,
DateTime.Now, null, pending);
var r = Db.AddToOrgFromTagRuns.Where(mm => mm.Orgid == orgid).OrderByDescending(mm => mm.Id).First();
r.Processed++;
r.Count = pids.Count;
Db.SubmitChanges();
}
var rr = Db.AddToOrgFromTagRuns.Where(mm => mm.Orgid == orgid).OrderByDescending(mm => mm.Id).First();
rr.Completed = DateTime.Now;
Db.SubmitChanges();
Db.UpdateMainFellowship(orgid);
});
return Redirect("/AddToOrgFromTag/Progress/" + orgid);
}
示例3: AddTasks
public static int AddTasks(CMSDataContext Db, Guid qid)
{
var q = Db.PeopleQuery(qid);
int qCount = q.Count();
if (qCount > 100)
return qCount;
foreach (var p in q)
{
var t = new Task
{
ListId = GetRequiredTaskList(Db, "InBox", Util.UserPeopleId.Value).Id,
OwnerId = Util.UserPeopleId.Value,
Description = "Please Contact",
ForceCompleteWContact = true,
StatusId = TaskStatusCode.Active,
};
p.TasksAboutPerson.Add(t);
}
DbUtil.Db.SubmitChanges();
return qCount;
}
示例4: UpdateQueryStatsAsync
public void UpdateQueryStatsAsync()
{
AsyncManager.OutstandingOperations.Increment();
string host = Util.Host;
var uid = Util.UserId;
ThreadPool.QueueUserWorkItem((e) =>
{
Util.SessionId = Guid.NewGuid().ToString();
var Db = new CMSDataContext(Util.GetConnectionString(host));
var d = DateTime.Today.Subtract(DateTime.Parse("1/1/1900")).Days;
var list = Db.QueryStats.Where(ss => ss.RunId == d);
foreach (var a in Db.QueryStatClauses())
{
var st = list.SingleOrDefault(ss => ss.StatId == a[0]);
if (st == null)
{
st = new QueryStat { StatId = a[0], Description = a[1], RunId = d, Runtime = DateTime.Now };
Db.QueryStats.InsertOnSubmit(st);
}
st.Count = Db.PeopleQuery(a[0] + ":" + a[1]).Count();
Db.SubmitChanges();
}
AsyncManager.OutstandingOperations.Decrement();
});
}
示例5: Results2Async
public void Results2Async()
{
AsyncManager.OutstandingOperations.Increment();
string host = Util.Host;
ThreadPool.QueueUserWorkItem((e) =>
{
var Db = new CMSDataContext(Util.GetConnectionString(host));
Db.DeleteQueryBitTags();
foreach (var a in Db.StatusFlags())
{
var t = Db.FetchOrCreateSystemTag(a[0]);
Db.TagAll(Db.PeopleQuery(a[0] + ":" + a[1]), t);
Db.SubmitChanges();
}
AsyncManager.OutstandingOperations.Decrement();
});
}
示例6: SavedQuery
internal static Expression SavedQuery(ParameterExpression parm,
CMSDataContext Db,
string QueryIdDesc,
CompareType op,
bool tf)
{
var a = QueryIdDesc.SplitStr(":", 2);
var qid = a[0].ToInt();
var savedquery = Db.QueryBuilderClauses.SingleOrDefault(q =>
q.QueryId == qid);
if (savedquery == null)
return AlwaysFalse(parm);
var q2 = Db.PeopleQuery(qid).Select(pp => pp.PeopleId);
var tag = Db.PopulateTemporaryTag(q2);
Expression<Func<Person, bool>> pred = p => p.Tags.Any(t => t.Id == tag.Id);
Expression expr = Expression.Invoke(pred, parm);
return expr;
}