Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Помогите новичку... / 9 сообщений из 9, страница 1 из 1
13.12.2012, 13:28
    #38077564
kpushkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
        XmlNode dataSources;
        Double sum;
        Double sim;
        Double dI;

void AnaliseXML(ref string type)
        {

            XmlNodeList cList = xmlDoc.SelectNodes("segment/payment");
            
            foreach (XmlNode dataSources in cList)
            {
                if ( type == dataSources.Attributes["type"].Value.ToString())
                {
                    string oString = dataSources.Attributes["value"].Value.ToString();
                    string rString = oString.Replace(".", ",");

                    dI = Convert.ToDouble(rString);
                    if (dI > 0)
                    {
                        sum += dI;
                    }
                    else
                    {
                        sim += dI;
                    }

                }
            }




Как можно загнать переменные "sum" и "sim" загнать в ассоциативный массив ? Желательно равный параметру "type" который указывается в void

Если несу чушь то поправляйте я всего два дня с C# разбираюсь.
...
Рейтинг: 0 / 0
13.12.2012, 14:05
    #38077652
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
kpushkin,

вам точно массив нужен? может быть коллекция объекта со св-вами sim,sum?
...
Рейтинг: 0 / 0
13.12.2012, 14:17
    #38077703
kpushkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
netivan, Смотрите в чем идея... при разборе XML я столкнулся с проблемой входа в атрибуты нода но решил её путем описанным выше но это не главное, атрибутов великой множество нодов тоже.

Но тут я не могу въехать как мне сделать так что бы:
Перебирались ноды "pyment" и при нахождении атрибута (type = 3) суммировались все положительные значения "value"
НО.. type может принимать 9 значений, пустое "" и от 0 до 7
Как сделать все описанное по каждому значению ума не приложу.

ЗЫ
а потом ещё сравнивать данные с MySQL и загнать все DataGrigView ... просто ужас... (два дня мало что бы разобраться со всем НО блин интересно)

ЗЫЫ
Если бы было бы все просто как в SQL тогда проблем бы было бы меньше =(
...
Рейтинг: 0 / 0
13.12.2012, 14:25
    #38077732
netivan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
kpushkin,

не пойму в чем проблема:) если значение type==3, то смотрите value .в чем подвох?
...
Рейтинг: 0 / 0
13.12.2012, 15:16
    #38077898
kpushkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
netivan,
Ладно теперь все по другому:
как значение переменных sum и sim передать только на AnaliseXML(3) ?

Ну грубо рисуя:
Код: c#
1.
MessageBox.Show(AnaliseXML(3).sum);



Ну или в таком ключе.
...
Рейтинг: 0 / 0
13.12.2012, 17:36
    #38078252
pation
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
kpushkin,

у вас пипец каша в голове, озвучте всё задачу
...
Рейтинг: 0 / 0
13.12.2012, 18:16
    #38078319
Arm79
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
pationkpushkin,

у вас пипец каша в голове, озвучте всё задачу

+1


kpushkin
Код: c#
1.
void AnaliseXML(ref string type)


зачем ref?
...
Рейтинг: 0 / 0
13.12.2012, 20:53
    #38078508
Cat2
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
pationkpushkin,

у вас пипец каша в голове, озвучте всё задачу
Что на входе и что должно быть на выходе
...
Рейтинг: 0 / 0
14.12.2012, 03:23
    #38078781
kpushkin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите новичку...
Сам разобрался.

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
double aPayment(string type, string expression) 
        {
            double ss = 0;

            XmlNodeList cList = xmlDoc.SelectNodes("segment/payment");
       
            foreach (XmlNode dataSources in cList)
            {
                if(dataSources.Attributes["type"].Value.ToString() == type)
                {
                    string oString = dataSources.Attributes["value"].Value.ToString();
                    string rString = oString.Replace(".", ",");

                    Double dI = Convert.ToDouble(rString);
                    if (expression == "sum")
                    {
                        if (dI > 0)
                            ss += dI;
                    }

                    if (expression == "sim")
                    {
                        if (dI <= 0)
                            ss += dI;
                    }
          
                }
            }

            return ss;
    
        }
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Помогите новичку... / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]