Я пытаюсь использовать бизнес-объект, который передаю в report.rdlc. Свойства в моем объекте не выставляются напрямую. Свойства, которые мне нужны, встроены в другой объект внутри объекта верхнего уровня. Поскольку это проект WCF, я не могу контролировать то, что происходит на стороне сервера. Я просто могу запросить эти объекты или вставить / обновить / удалить их информацию из базы данных. Это делается таким образом, поскольку серверная часть может использовать несколько разновидностей базы данных.
Вот что я вижу после добавления своего бизнес-объекта в виде DataSource
:
-BusinessObject
-CustomerInfo
-ClientName
-ColumnName
-DisplayName
-FieldName
-IsNull
-KeyColumn
-SenondKeyColumn
-StringValue
-ClientID
-ColumnName
-DisplayName
-FieldName
-IntValue
-IsNull
-KeyColumn
-SenondKeyColumn
+ClientAddress
+Instrument
+Telephone
и т. Д.
Мне нужно иметь возможность отображать, например, поле ClientName.StringValue
.
Если я перетащу нужное поле в отчет, я получу:
=First(Fields!StringValue.Value)
Это ничего не отображает при запуске отчета, я полагаю, потому что он не может определить, о чем StringValue
говорит, и их может быть много.
Если я попытаюсь перетащить объект ClientName
, я получу:
=First(Fields!ContactName.Value)
Однако это дает:
#ERROR
Когда отчет запускается.
Я бы подумал, что вы могли бы использовать:
=First(Fields!ClientName.StringValue.Value)
но это даже не позволит мне строить.