Как получить доступ к полям подкласса в RDL C? - PullRequest
0 голосов
/ 09 января 2020

У меня есть класс с именем Orders, который состоит из трех полей: OrderID (int) OrderDate (DateTime) Details (List)

где Widget - это определенный пользователем класс, который состоит из: WidgetID (int) Name (строка) Количество (int)

Код для класса Orders:

using System;
using System.Collections.Generic;

namespace MySolution
{
    public class Orders
    {
        public int OrderID
        {
            get;
            set;
        }
        public DateTime OrderDate
        {
            get;
            set;
        }
        public List<Widget> Details
        {
            get;
            set;
        }

        public Orders()
        {
        }
    }
}

, а код для класса Widget:

using System;
using System.Collections.Generic;

namespace MySolution
{
    [Serializable()]
    public class Widget
    {
        public int WidgetID
        {
            get;
            set;
        }
        public string Name
        {
            get;
            set;
        }
        public int Quantity
        {
            get;
            set;
        }

        public Widget()
        {
        }
    }
}

Однако, когда я создаю набор данных в RDL C из метода в другом классе, который возвращает список, использование «Fields! Details.Value.WidgetID» не работает, даже если Widget является сериализуемым.

Есть ли способ прямого доступа к значениям WidgetID в строке Order (например) напрямую?

Имеет ли тот факт, что Details является списком, как-то связано с ним? Нужен ли подотчет в такой ситуации?

1 Ответ

0 голосов
/ 13 января 2020

На самом деле, я «думаю», что моя проблема как-то связана с моей установкой Visual Studio - ReportViewer.LocalReport.Render зависает всякий раз, когда в отчете есть набор данных, который содержит поле, которое является самоопределяемым классом, он загружается (затем выгружается , затем перезагружает) несколько библиотек DLL, включая System.Runtime.Serialization, а затем зависает. Может быть некоторое несоответствие между библиотеками DLL VS и версией Microsoft.ReportViewer. * Библиотеки DLL, на которые я ссылаюсь в приложении.

...