LightSwitch에서 다음 작업을 수행하는 데 어려움을 겪고 있습니다. 그래서처럼 partial void tblStaffExtendeds_Updating(tblStaffExtended entity)
동안 개체를 '차단'하고 우리 지역 ldap
에서 일부 데이터를 당겨 특정 값으로 개체의 속성 중 하나를 설정하려고 :LightSwitch Entity : 외래 키 속성 값 업데이트
partial void tblStaffExtendeds_Updating(tblStaffExtended entity)
{
string ldapPath = @"LDAP://DC=myLDAP,DC=myLDAP";
string user = entity.GPEmployeeID.ToString();
string[] props = {
ActiveDirectoryInfo.strings.DISPLAYNAME, ActiveDirectoryInfo.strings.EMAIL,
ActiveDirectoryInfo.strings.LOGONALIAS, ActiveDirectoryInfo.strings.PHONE,
ActiveDirectoryInfo.strings.OFFICE, ActiveDirectoryInfo.strings.TITLE,
ActiveDirectoryInfo.strings.GPEMPLOYEEID
};
var propResults = ActiveDirectoryInfo.UserPropertySearchByGPEmpID(user, ldapPath, props);
entity.tblAdminStaffType.StaffType = propResults[ActiveDirectoryInfo.strings.TITLE];
entity.WorkEmail = propResults[ActiveDirectoryInfo.strings.EMAIL];
entity.UserID = propResults[ActiveDirectoryInfo.strings.LOGONALIAS];
entity.WorkPhone = propResults[ActiveDirectoryInfo.strings.PHONE];
}
을 지금 WorkEmail
같은 필드 그리고 WorkPhone
이 속성은 단지 strings
이고 이것이 내가 LDAP
에서 얻은 것입니다.
그러나 Admin 테이블 항목에 대한 참조 인 StaffType
을 설정해야합니까? LDAP은 Admin 테이블의 설명과 일치하는 string
을 반환하지만 올바른 ID로 설정해야하는 Entity에서는 가정합니다.
"Look Up"방법을 사용하여 설명을 내 String
에서 LDAP
으로 일치시켜 관리자 테이블에서 ID를 찾는 방법이 부족합니까? StaffTypes 표는 직원을 보유하고 있음을, 나는, 데이터 소스가 ApplicationData합니다 (LS의 기본 이름)라고 있으리라 믿고있어이 예에서는
string title = propResults[ActiveDirectoryInfo.strings.TITLE];
var qryAdminStaffType = from st in DataWorkspace.ApplicationData.StaffTypes
where st.Title == title
select st;
entity.tblAdminStaffType.StaffType = qryAdminStaffType.FirstOrDefault();
: