"Dynamic"이라는 속성과 SetDefaultValues()
이라는 속성이 동일한 DLL에 있습니다. 속성이다른 DLL에있는 속성에 액세스하는 방법
public class ManagedProperty: DataModelObject, ISerializable
{
public bool Dynamic
{
get
{
return m_dynamic;
}
set
{
m_dynamic = value;
}
}
private bool m_dynamic = true;
}
방법 SetDefaultValues 아래에 표시됩니다() 난 내 윈도우 서비스를 다시 시작 할 때마다, 그것은 버그가 원래 값에서 디폴트 지금 내가 직면하고 defult.The 문제의 모든 값을 기본적됩니다. 그래서 내가 원하는 조건은 "동적"속성이 거짓 일 때마다 오류가 발생하지 않아야합니다.
따라서 창 서비스에서 코드를 유발하는 문제가 아래에 나와 있습니다. 디버거 속성 동적 항상
for (int i = 0; i < allObjects.Count; i++)
{
DataModelObject dmo = (DataModelObject)allObjects.GetAt(i);
dmo.SatisfyGRs(allObjects); // Satisfy all GUID references.
if (dmo is ManagedDevice)
{
ManagedDevice md = (ManagedDevice)dmo;
// Set default values for user defined properties
if (md.SetDefaultValues())
{
SaveObject(md, false);
}
md.CheckThresholds(); // Check thresholds on all properties
}
}
사실 나는 그것이 아래 그림처럼,하지만 난 그것을 제대로 작동 및 기본 값에 설정되지 몰라요 수정 보여줍니다. 사람이 무엇을 잘못 여기 것입니다 말해, 또는 모든 것이 올 바르고 난 다른 환경
for (int i = 0; i < allObjects.Count; i++)
{
DataModelObject dmo = (DataModelObject)allObjects.GetAt(i);
dmo.SatisfyGRs(allObjects); // Satisfy all GUID references.
if (dmo is ManagedDevice)
{
ManagedDevice md = (ManagedDevice)dmo;
ManagedProperty userprop = new ManagedProperty();
if (userprop.Dynamic == false){
// Set default values for user defined properties
if (md.SetDefaultValues())
{
SaveObject(md, false);
}}
md.CheckThresholds(); // Check thresholds on all properties
}
}
이것은 모두 메모리에 있습니다. 맞습니까? 서비스를 다시 시작하면 메모리에있는 모든 것을 잃게됩니다. 다시 시작 사이에 상태를 유지하려면 다시 시작하기 전에 해당 상태 (파일, DB 등)를 유지 한 다음 다시 시작한 후에 해당 상태를로드해야합니다. –
@Bob 호른, 아니 다시 시작하기 전에 내가 저장 한 및 데이터베이스 xml 값을 볼 수 있지만 모든 defalut 다시 시작할 때. 내 deugger가 제대로 연결되지 않고 어떻게이 코드를 주석으로 처리했는지 정확하게 알 수있게되면서이 문제를 알게되었습니다. – ponting
'if' 문에 실수가 있습니까? 거짓 일 때 기본 설정하지 않아야한다고 말했습니까? 당신의 진술이 다음과 같지 않아야합니다 :'if (userprop.Dynamic! = false)'? 지금 당장은 이미 거짓 일 때만 기본값이됩니다. –