은 .. 안녕, 나는이 같은 실체를 일부 열 값을 연결하기 위해 노력하고있어 :엔티티 프레임 워크 재산권 설명자 수집 필드 값 만
var valor = "";
PropertyDescriptorCollection objProperties = TypeDescriptor.GetProperties(obj);
foreach (PropertyDescriptor objProperty in objProperties)
{
if (objProperty.Name != "AuditoriaUC" && objProperty.Name != "AuditoriaFC"
&& objProperty.Name != "AuditoriaIPC" && objProperty.Name != "AuditoriaUM"
&& objProperty.Name != "AuditoriaFM" && objProperty.Name != "AuditoriaIPM"
&& objProperty.Name != "AuditoriaEliminado")
{
valor = valor + " " + objProperty.Name + ": " + Convert.ToString(objProperty.GetValue(obj));
}
}
return valor;
그러나, 그것은 또한 나에게 열 참조를 보여줍니다. 즉, 그것은 또한 끝에이 인쇄 :
"ArchivosAdjuntos:System.Data.Objects.DataClasses.EntityCollection`1[XXX.MyProject.Model.Entities.ArchivosAdjuntos]
CorrelativoActualPorPeriodo: XXX.MyProject.Model.Entities.CorrelativoActualPorPeriodo
CorrelativoActualPorPeriodoReference: System.Data.Objects.DataClasses.EntityReference`1[XXX.MyProject.Model.Entities.CorrelativoActualPorPeriodo]
EntityState: Modified
EntityKey: System.Data.EntityKey"
나는 단지 난 그냥 foreach 문을 깰 수있는 하드 코딩 된 문자열의 마지막 열 값을 비교함으로써 달성 할 수있는 열 값을 반환하고 싶습니다. 그러나 나는 더 좋은 방법이 있는지 정말로 알고 싶다. 그런 다음
PropertyInfo[] props = obj.GetType().GetProperties(BindingFlags.Public
| BindingFlags.Instance);
당신이 제거 할 수 있습니다 참조 유형 properties.For 예를 필터링하는 LINQ를 사용할 수 있습니다
멋지다, 속성 클래스와 약간의 잔인한지만, 덕분에, 감사합니다 Logged –