本文整理汇总了C#中System.Security.Permissions.PrincipalPermission.Union方法的典型用法代码示例。如果您正苦于以下问题:C# PrincipalPermission.Union方法的具体用法?C# PrincipalPermission.Union怎么用?C# PrincipalPermission.Union使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Security.Permissions.PrincipalPermission
的用法示例。
在下文中一共展示了PrincipalPermission.Union方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: JobAnswerDelete
public new void JobAnswerDelete(JobAnswer entity)
{
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
base.JobAnswerDelete(entity);
}
示例2: testRoleBtn_Click
//[PrincipalPermission(SecurityAction.Demand, Name="aa")]
protected void testRoleBtn_Click(object sender, EventArgs e)
{
var aPermission = new PrincipalPermission("a", null);
var bPermission = new PrincipalPermission("b", null);
aPermission.Union(bPermission).Demand();
//permission.Demand();
}
示例3: NewsAttachmentDelete
public new void NewsAttachmentDelete(NewsAttachment entity)
{
// check permission: admin
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
TraceCallEnterEvent.Raise();
try
{
FileDataContext fileDataContext = new FileDataContext();
string ext = Path.GetExtension(entity.Path).ToLower();
string fileName = entity.ID.ToString() + ext;
fileDataContext.NewsAttachmentDelete(entity.NewsRef, fileName);
base.NewsAttachmentDelete(entity);
BusinessAuditEvent.Success();
TraceCallReturnEvent.Raise();
return;
}
catch (Exception ex)
{
ExceptionManager.Publish(ex);
BusinessAuditEvent.Fail(
new EventParameter("Exception", ex.ToString())
);
TraceCallReturnEvent.Raise(false);
throw;
}
}
示例4: ProgramAttachmentInactivate
public void ProgramAttachmentInactivate(DBGuid IdVal)
{
// check permission: admin
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
ProgramAttachment selected = base.ProgramAttachmentSelect(IdVal);
if (selected == null)
throw new ApplicationException("A megadott azonosítóval nem létezik csatolt fájl.");
ProgramService progSrv = new ProgramService();
Program selectedProgram = progSrv.ProgramSelect(selected.ProgramRef);
if (selectedProgram == null)
throw new ApplicationException("A megadott azonosítóval nem létezik program.");
string writerRole = selectedProgram.OrganisationRef.Value.ToString() + ".Writer";
PrincipalPermission permWriter = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, writerRole);
permWriter.Union(permAdmin).Demand();
TraceCallEnterEvent.Raise();
try
{
// save data
selected.IsActive = false;
base.ProgramAttachmentUpdate(selected);
BusinessAuditEvent.Success(
new EventParameter("ProgramAttachmentID", IdVal.ToString()),
new EventParameter("ProgramAttachmentName", selected.Name),
new EventParameter("ProgramID", selected.ProgramRef.ToString())
);
TraceCallReturnEvent.Raise();
return;
}
catch (Exception ex)
{
ExceptionManager.Publish(ex);
BusinessAuditEvent.Fail(
new EventParameter("Exception", ex.ToString()),
new EventParameter("ProgramAttachmentID", IdVal.ToString())
);
TraceCallReturnEvent.Raise(false);
throw;
}
}
示例5: ProgramPartnerDelete
public new void ProgramPartnerDelete(ProgramPartner entity)
{
TraceCallEnterEvent.Raise();
try
{
// logical checks:
ProgramService progSrv = new ProgramService();
Program selected = progSrv.ProgramSelect(entity.ProgramRef);
if (selected == null)
throw new ApplicationException("Ezzel az azonosítóval nem létezik program.");
if (!selected.IsActive)
throw new ApplicationException("A program nem aktív.");
// check permission: Writer or Admin
string writerRole = selected.OrganisationRef.Value.ToString() + ".Writer";
PrincipalPermission permWriter = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, writerRole);
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permWriter.Union(permAdmin).Demand();
// save data:
base.ProgramPartnerDelete(entity);
BusinessAuditEvent.Success(
new EventParameter("ProgramID", entity.ProgramRef.ToString()),
new EventParameter("OrganisationID", entity.OrganisationRef.ToString())
);
TraceCallReturnEvent.Raise();
return;
}
catch (Exception ex)
{
ExceptionManager.Publish(ex);
BusinessAuditEvent.Fail(
new EventParameter("Exception", ex.ToString()),
new EventParameter("ProgramID", entity.ProgramRef.ToString()),
new EventParameter("OrganisationID", entity.OrganisationRef.ToString())
);
TraceCallReturnEvent.Raise(false);
throw;
}
}
示例6: CreatePermission
public override IPermission CreatePermission()
{
IList<string> roles = (this.Roles ?? string.Empty).Split(',', ';')
.Select(s => s.Trim())
.Where(s => s.Length > 0)
.Distinct()
.ToList();
IPermission result;
if (roles.Count == 0)
{
result = new PrincipalPermission(null, null, true);
}
else
{
result = new PrincipalPermission(null, roles[0]);
for (int i = 1; i < roles.Count; i++)
{
result = result.Union(new PrincipalPermission(null, roles[i]));
}
}
return result;
}
示例7: JobOfferSelectBySubscriber
public JobOfferContainer JobOfferSelectBySubscriber(DBString SubscriberIDVal, DBString TypeIdRef)
{
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
TraceCallEnterEvent.Raise();
try
{
JobOfferContainer result = new JobOfferContainer();
DataSet entitySet = m_DataContext.ndihdJobOfferSelectBySubscriber(SubscriberIDVal, TypeIdRef);
result = new JobOfferContainer(entitySet.Tables[0]);
TraceCallReturnEvent.Raise();
return result;
}
catch (Exception ex)
{
ExceptionManager.Publish(ex);
TraceCallReturnEvent.Raise(false);
throw;
}
}
示例8: JobOfferSelect
public new JobOffer JobOfferSelect(DBGuid IDVal)
{
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
return base.JobOfferSelect(IDVal);
}
示例9: OrganisationKefUpdate
public void OrganisationKefUpdate(Organisation org, KefEventContainer kefEvents, DataTable kefMembers)
{
// check permission: Writer or Admin
string writerRole = org.ID.Value.ToString() + ".Writer";
PrincipalPermission permWriter = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, writerRole);
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permWriter.Union(permAdmin).Demand();
TraceCallEnterEvent.Raise();
try
{
// check required fields:
if (org.Name.Length == 0)
throw new ArgumentNullException("Organisation.Name", "A szervezet neve nincs megadva.");
if (org.PostCode.Length == 0)
throw new ArgumentNullException("Organisation.PostCode", "A szervezet címének irányítószáma nincs megadva.");
if (org.City.Length == 0)
throw new ArgumentNullException("Organisation.City", "A szervezet címének települése nincs megadva.");
if (org.Address.Length == 0)
throw new ArgumentNullException("Organisation.Address",
"A szervezet címének utca, házszám része nincs megadva.");
if (org.OrganisationFormRef.Length == 0)
throw new ArgumentNullException("Organisation.OrganisationFormRef", "A szervezeti forma kódja nincs megadva.");
if (org.WorkingAreaRef.Length == 0)
throw new ArgumentNullException("Organisation.WorkingAreaRef", "A mûködési terület nincs megadva.");
// logical checks:
Organisation selected = base.OrganisationSelect(org.ID);
if (selected == null)
throw new ApplicationException("Ezzel az azonosítóval nem létezik szervezet.");
NdiPrincipal principal = (NdiPrincipal) Thread.CurrentPrincipal;
if (!selected.IsActive && !principal.IsInRole("Administrator"))
throw new ApplicationException("A szervezet nem aktív.");
// save data:
org.IsActive = selected.IsActive;
try
{
//elmentjük a szervezet módosított adatokat
base.OrganisationUpdate(org);
m_DataContext.BeginNestedTran();
//töröljük az összes kapcsolódó eseményt ...
OrganisationService srvOrg = new OrganisationService(m_DataContext);
KefEventService srvKefEvent = new KefEventService(m_DataContext);
srvOrg.DeleteChildrenByOrganisationOfKefEvent(org.ID);
//majd beszúrjuk az újakat
foreach (KefEvent item in kefEvents.Current)
{
srvKefEvent.KefEventInsert(item);
}
//töröljük az összes kapcsolódó tagot ...
srvOrg.DeleteChildrenByKefOrgOfOrg(org.ID);
OrgMemberOfOrgService srvKefMember = new OrgMemberOfOrgService(m_DataContext);
//majd beszúrjuk az újakat
foreach (DataRow row in kefMembers.Rows)
{
OrgMemberOfOrg member = new OrgMemberOfOrg(Guid.NewGuid());
member.OrganisationKefRef = new Guid(row["uOrganisationKefRef"].ToString());
member.OrganisationMemberRef = new Guid(row["uOrganisationMemberRef"].ToString());
member.ContactName = row["cContactName"].ToString();
member.ContactInstitution = row["cContactInstitution"].ToString();
member.ContactZipCode = row["cContactZipCode"].ToString();
member.ContactTownShip = row["cContactTownShip"].ToString();
member.ContactAddress = row["cContactAddress"].ToString();
member.ContactPhone1 = row["cContactPhone1"].ToString();
member.ContactPhone2 = row["cContactPhone2"].ToString();
member.ContactPhone3 = row["cContactPhone3"].ToString();
member.ContactFax = row["cContactFax"].ToString();
member.ContactPosition = row["cContactPosition"].ToString();
member.ContactPositionInKef = row["cContactPositionInKef"].ToString();
member.ContactEmail1 = row["cContactEmail1"].ToString();
member.ContactEmail2 = row["cContactEmail2"].ToString();
member.ContactEmail3 = row["cContactEmail3"].ToString();
member.ContactQualification = row["cContactQualification"].ToString();
member.KefContactTypeRef = row["cKefContactTypeRef"].ToString();
srvKefMember.OrgMemberOfOrgInsert(member);
}
//elmentjük a szervezethez tartozó feltöltött fileokat
OrganisationAttachmentService srvOrgAtt = new OrganisationAttachmentService(m_DataContext);
// Clear old files:
OrganisationAttachmentContainer oldFiles = base.SelectChildrenByAttachmentOfOrganisation(org.ID);
foreach (OrganisationAttachment oldFile in oldFiles.All)
{
srvOrgAtt.OrganisationAttachmentDelete(oldFile);
}
foreach (OrganisationAttachment file in org.OrgAttachments.Current)
{
if(file.DownloadData != null)
srvOrgAtt.OrganisationAttachmentInsert(file);
//.........这里部分代码省略.........
示例10: NewsAttachmentUpdate
public new void NewsAttachmentUpdate(NewsAttachment entity)
{
// check permission: admin
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
TraceCallEnterEvent.Raise();
try
{
base.NewsAttachmentUpdate(entity);
BusinessAuditEvent.Success(
new EventParameter("NewsAttachmentID", entity.ID)
);
TraceCallReturnEvent.Raise();
return;
}
catch (Exception ex)
{
ExceptionManager.Publish(ex);
BusinessAuditEvent.Fail(
new EventParameter("Exception", ex.ToString()),
new EventParameter("ContinuativeID", entity.ID));
TraceCallReturnEvent.Raise(false);
throw;
}
}
示例11: UnionWithBadPermission
public void UnionWithBadPermission ()
{
PrincipalPermission p1 = new PrincipalPermission ("user", null);
EnvironmentPermission ep2 = new EnvironmentPermission (PermissionState.Unrestricted);
PrincipalPermission p3 = (PrincipalPermission) p1.Union (ep2);
}
示例12: UnionWithUnrestricted
public void UnionWithUnrestricted ()
{
PrincipalPermission p1 = new PrincipalPermission (PermissionState.Unrestricted);
PrincipalPermission p2 = new PrincipalPermission ("user", "role");
PrincipalPermission p3 = (PrincipalPermission) p1.Union (p2);
Assert ("Unrestricted U P2 == Unrestricted", p3.IsUnrestricted ());
p3 = (PrincipalPermission) p2.Union (p1);
Assert ("P2 U Unrestricted == Unrestricted", p3.IsUnrestricted ());
}
示例13: JobOfferUpdate
public new void JobOfferUpdate(JobOffer entity)
{
// check permission: Writer or Admin
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
TraceCallEnterEvent.Raise();
try
{
// Check required fields:
if (entity.Description.Length == 0)
throw new ArgumentNullException("JobOffer.Description", "A hirdetés leírása nincs megadva.");
// Logical checks
JobOffer selected = base.JobOfferSelect(entity.ID);
if (selected == null)
throw new ApplicationException("A megadott azonosítóval nem létezik hirdetés.");
// Save data
selected.Requirements = entity.Requirements;
selected.QualificationMinRef = entity.QualificationMinRef;
selected.IdealEmployee = entity.IdealEmployee;
selected.EmployeeCount = entity.EmployeeCount;
selected.HomePage = entity.HomePage;
selected.ContactName = entity.ContactName;
selected.ContactPhone = entity.ContactPhone;
selected.ContactEmail = entity.ContactEmail;
selected.Description = entity.Description;
selected.City = entity.City;
selected.RegionRef = entity.RegionRef;
selected.Status = entity.Status;
selected.ActivityPrevention = entity.ActivityPrevention;
selected.ActivityResearch = entity.ActivityResearch;
selected.ActivityRehabilitation = entity.ActivityRehabilitation;
selected.ActivityOther = entity.ActivityOther;
selected.Expiredate = entity.Expiredate;
selected.NotificationSend = entity.NotificationSend;
selected.NotificationDate = entity.NotificationDate;
selected.LastModified = DateTime.Now;
selected.JobOfferAttachments = entity.JobOfferAttachments;
JobOfferAttachmentService attSrv = new JobOfferAttachmentService(m_DataContext);
// Clear old files:
JobOfferAttachmentContainer oldFiles = base.SelectChildrenByAttachmentOfJobOffer(entity.ID);
foreach (JobOfferAttachment oldFile in oldFiles.All)
{
attSrv.JobOfferAttachmentDelete(oldFile);
}
JobOfferAttachment newFile;
// EDocumentAttachments - insert:
foreach (JobOfferAttachment file in selected.JobOfferAttachments.Current)
{
if (file.FileData.Length == 0)
{
newFile = attSrv.JobOfferAttachmentSelectFile(file.ID);
}
else
{
newFile = file;
}
newFile.JobOfferRef = selected.ID;
newFile.Name = file.Name;
newFile.Description = file.Description;
newFile.CreatedDate = DateTime.Now;
if (attSrv.JobOfferAttachmentSelect(newFile.ID) != null)
{
attSrv.JobOfferAttachmentUpdate(newFile);
}
else
{
attSrv.JobOfferAttachmentInsert(newFile);
}
}
base.JobOfferUpdate(selected);
BusinessAuditEvent.Success(
new EventParameter("JobOfferID", entity.ID.ToString()),
new EventParameter("JobOfferLogin", entity.Sender)
);
TraceCallReturnEvent.Raise();
return;
}
catch (Exception ex)
{
ExceptionManager.Publish(ex);
BusinessAuditEvent.Fail(
new EventParameter("Exception", ex.ToString()),
new EventParameter("JobOfferID", entity.ID.ToString()),
new EventParameter("JobOfferLogin", entity.Sender)
);
TraceCallReturnEvent.Raise(false);
//.........这里部分代码省略.........
示例14: JobAnswerSelect
public new JobAnswer JobAnswerSelect(DBGuid JobRefVal, DBString TypeVal,
DBString SubscriberNameRefVal,
DBString SenderNameRefVal)
{
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
return base.JobAnswerSelect(JobRefVal, TypeVal, SubscriberNameRefVal, SenderNameRefVal);
}
示例15: JobAnswerInsert
public new void JobAnswerInsert(JobAnswer entity)
{
try
{
PrincipalPermission permReg = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Registered");
PrincipalPermission permAdmin = new PrincipalPermission(Thread.CurrentPrincipal.Identity.Name, "Administrator");
permReg.Union(permAdmin).Demand();
JobAnswer ja = base.JobAnswerSelect(entity.JobRef, entity.Type, entity.SubscriberNameRef, entity.SenderNameRef);
if(ja != null)
{
if(ja.IsActive)
throw new ApplicationException("Erre a hirdetésre már válaszolt.");
}
//entity.SubscriberNameRef = Thread.CurrentPrincipal.Identity.Name;
entity.Created = DateTime.Now;
entity.IsActive = true;
if (ja == null)
{
base.JobAnswerInsert(entity);
}
else
{
ja = entity;
base.JobAnswerUpdate(ja);
}
//értesítjük a feladót, hogy valaki válaszolt a hirdetésére
//set mail:
Email mail = new Email(Guid.NewGuid());
//Subject és body lekérdezése
string body = "";
string subject = "";
EmailTemplateService srvTemplate = new EmailTemplateService();
srvTemplate.GetEmailTemplateByCode(ref subject, ref body, EmailCategory.JobAnswerCreated);
mail.Category = EmailCategory.JobAnswerCreated;
mail.Subject = subject;
UserService srvUser = new UserService();
User subscriber = srvUser.UserSelect(entity.SubscriberNameRef);
//Ha keresés hirdetésre jelentkezett valaki
if (entity.Type == JobAnswerTypeEnum.FIN)
{
User sender = srvUser.UserSelect(entity.SenderNameRef);
if (sender != null && sender.Email.Length > 0)
{
JobFindService srvJob = new JobFindService();
JobFind find = srvJob.JobFindSelect(entity.JobRef);
mail.To = sender.Email;
body = body.Replace("<FULL_USER_NAME>", sender.Name);
if (find != null)
{
body = body.Replace("<JOB_REFID>", find.RefId.ToString());
body = body.Replace("<JOB_DESCRIPTION>", find.Description);
}
}
}
else
{
//ajánlat
JobOfferService srvJob = new JobOfferService();
JobOffer offer = srvJob.JobOfferSelect(entity.JobRef);
if (offer != null && offer.ContactEmail.Length > 0)
{
mail.To = offer.ContactEmail;
body = body.Replace("<FULL_USER_NAME>", offer.ContactName);
body = body.Replace("<JOB_REFID>", offer.RefId.ToString());
body = body.Replace("<JOB_DESCRIPTION>", offer.Description);
}
}
if (subscriber != null)
{
body = body.Replace("<SUBSCRIBER_NAME>", subscriber.Name);
body = body.Replace("<SUBSCRIBER_MAIL>", subscriber.Email);
body = body.Replace("<MOTIVATION>", entity.Motivation);
}
mail.MailBody = body;
if (mail.MailBody != null && mail.To != null && mail.Subject != null)
{
// Save data to database
EmailService emailSrv = new EmailService(m_DataContext);
m_DataContext.BeginNestedTran();
try
{
emailSrv.EmailInsert(mail);
m_DataContext.CommitNested();
}
catch
{
m_DataContext.RollbackNested();
throw;
}
// Sending mail:
try
{
emailSrv.EmailSend(mail.ID);
}
//.........这里部分代码省略.........