Форум программистов, компьютерный форум, киберфорум
C#: ASP.NET MVC
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 25.02.2013
Сообщений: 25
1

Создание страницы редактирования настроек

27.02.2014, 14:03. Показов 696. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, форумчане!
Задание - нужно создать страницу для редактирования настроек который считываются с .xml файла. C С# знаком неделю. Показали конфиг контроллер, .xml страницу, объяснили, но тяжко)

ConfigController
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Xml.Serialization;
using Clases;
 
namespace ConfiguratorController.Controllers
{
    public class ConfigurationController : Controller
    {
        //
        // GET: /Configuration/
        private ParkomatConfig Config = new ParkomatConfig();
        public ActionResult Index()
        {
            return View();
        }
 
        public ActionResult GetConfig(int equipmentId)
        {
            StreamReader File;
            XmlSerializer reader = new XmlSerializer(typeof(ParkomatConfig));
            string path = @"C:\" + equipmentId + ".xml"; ;
            try
            {
                File = new StreamReader(path);
                Config = (ParkomatConfig)reader.Deserialize(File);
               
                File.Close();
                return View(Config);
            }
            catch (Exception)
            {               
                return null;
            }                                                            
        }
 
        public void SaveConfig(ParkomatConfig innConfig, int equipmentId)
        {
            try
            {
                Config = innConfig;
                XmlSerializer writer = new XmlSerializer(typeof (ParkomatConfig));
                string path = @"C:\"+equipmentId+".xml";
                StreamWriter File = new StreamWriter(path);
                writer.Serialize(File, Config);
                File.Close();
            }
            catch (Exception)
            {
                return;
            }
            return;
        }
 
    }
}
.xml файл с конфигами
XML
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
<?xml version="1.0"?>
<ParkomatConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <!-- Тайминги переходов -->
  <AppTiming>
    <!-- Время неактивности  -->
    <PayTimeOut>5</PayTimeOut>
    <!-- Время отображения уведомления пользователю -->
    <ShowMessageTimeOut>3</ShowMessageTimeOut>
    <!-- Время автоматического запуска Z отчета -->
    <TimeAutoReport>23:56</TimeAutoReport>
  </AppTiming>
 
  <!-- Настройки оборудования -->
  <Equipment>
 
    <!--  -->
    <CoinAcceptor>
      <Active>true</Active>
      <Port>6</Port>
      <Baud>19200</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>EU9R</DeviceName>
    </CoinAcceptor>
 
    <!--  -->
    <CoinDispenser>
      <Active>true</Active>
      <Port>7</Port>
      <Baud>9600</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>SA595C</DeviceName>
    </CoinDispenser>
 
    <!--  -->
    <CashAcceptor>
      <Active>true</Active>
      <Port>5</Port>
      <Baud>9600</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>SCI8327R</DeviceName>
    </CashAcceptor>
 
    <!--  -->
    <CardReader>
      <Active>true</Active>
      <Port>1</Port>
      <Baud>9600</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>MicroEm</DeviceName>
    </CardReader>
 
    <!--  -->
    <BarCodeReader>
      <Active>true</Active>
      <Port>2</Port>
      <Baud>9600</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>FM420</DeviceName>
    </BarCodeReader>
 
    <!--  -->
    <CardDispenser>
      <Active>false</Active>
      <Port>0</Port>
      <Baud>0</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
    </CardDispenser>
 
    <!--  -->
    <Eqcuiring>
      <Active>true</Active>
      <Port>0</Port>
      <Baud>0</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>Uniteller</DeviceName>
    </Eqcuiring>
 
    <!--  -->
    <CoinDispenserNominal>1000</CoinDispenserNominal>
 
    <!--  -->
    <CashDispenserNominal1>5000</CashDispenserNominal1>
 
    <!--  -->
    <CashDispenserNominal2>10000</CashDispenserNominal2>
 
    <!--  -->
    <CashDispenserNominal3>0</CashDispenserNominal3>
 
    <!--  -->
    <CashDispenserNominal4>0</CashDispenserNominal4>
 
    <!--  -->
    <FiscalPrinter>
      <Active>true</Active>
      <Port>4</Port>
      <Baud>115200</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>PRIM21</DeviceName>
    </FiscalPrinter>
 
    <!-- Список запрещенных номиналов банкнот -->
    <RejectedNominal>
      <int>1000</int>
    </RejectedNominal>
    
    <!--  -->
    <FiscalHeaderLines>
      <string>******************************************</string>
      <string>*                                        *</string>
      <string>* г.Москва                               *</string>
      <string>*                                        *</string>
      <string>* Парковка                               *</string>
      <string>******************************************</string>
    </FiscalHeaderLines>
 
    <!--  -->
    <FiscalFooterLines>
      <string>******************************************</string>
      <string>*          Спасибо!                      *</string>
      <string>*                                        *</string>
      <string>*          Спасибо!                      *</string>
      <string>*                                        *</string>
      <string>*          Спасибо!                      *</string>
      <string>*                                        *</string>
      <string>*          Спасибо!                      *</string>
      <string>*                                        *</string>
      <string>*          Спасибо!                      *</string>
      <string>*                                        *</string>
      <string>*          Спасибо!                      *</string>
      <string>*                                        *</string>
      <string>******************************************</string>
    </FiscalFooterLines>
 
    <!--  -->
    <FiscalItemsHeaderLines>
      <string>----------------------------------------</string>
      <string>     </string>
      <string>----------------------------------------</string>
    </FiscalItemsHeaderLines>
 
    <!--  -->
    <FiscalAfterTotalLines>
      <string>FirstLine</string>
      <string>SecondLine</string>
    </FiscalAfterTotalLines>
 
    <!--  -->
    <FiscalAfterTenderLines>
      <string>FirstLine</string>
      <string>SecondLine</string>
    </FiscalAfterTenderLines>
 
    <!--  -->
    <FiscalDocParam1>23254</FiscalDocParam1>
    <!--  -->
    <FiscalDocParam2>2240</FiscalDocParam2>
 
    <!--  -->
    <CashDispenser>
      <Active>false</Active>
      <Port>3</Port>
      <Baud>9600</Baud>
      <NoWokrAnError>false</NoWokrAnError>
      <RetriesCount>0</RetriesCount>
      <DeviceName>ECDM200</DeviceName>
    </CashDispenser>
  </Equipment>
 
  <!-- Настройки внешнего вида -->
  <ViewConfig>
    <UserMainImage></UserMainImage>
    <UserLogoImage></UserLogoImage>
    <AddMessageForStartPage>Первый час бесплатно.\r\nКаждый последующий 10руб./час.\r\nПосле оплаты 15 мин. на выезд.</AddMessageForStartPage>
  </ViewConfig>
 
  <!--Настройки звуков -->
  <SoundConfig>
    <EnableSound>false</EnableSound>
    <SoundAmountFull>Sound\AmountFull.wav</SoundAmountFull>
    <SoundDebtNot>Sound\DebtNot.wav</SoundDebtNot>
    <SoundGiveCheck>Sound\GiveCheck.wav</SoundGiveCheck>
    <SoundInsertMoney>Sound\InsertMoney.wav</SoundInsertMoney>
  </SoundConfig>
 
  <!-- Имя паркомата - используется в чеке -->
  <ParkomatName>Первый</ParkomatName>
  <!-- Ид паркомата -->
  <IdParcomat>6</IdParcomat>
 
</ParkomatConfig>
скрипт сделанный мной глядя на пример имея недельные знания js
Javascript
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<script>
 
    // p_ - parameters
    // m_ - methods
 
    //AppTimingConfig params
    this.p_PayTimeOut = null;
    this.p_ShowMessageTimeOut = null;
    this.p_TimeAutoReport = null;
 
    //Equipment params
    this.p_CoinDispenserNominal = null;
    this.p_CashDispenserNominal1 = null;
    this.p_CashDispenserNominal2 = null;
    this.p_CashDispenserNominal3 = null;
    this.p_CashDispenserNominal4 = null;
    this.p_FiscalHeaderLines[null];
    this.p_FiscalFooterLines[null];
    this.p_FiscalItemsHeaderLines[null];
    this.p_FiscalAfterTotalLines[null];
    this.p_FiscalAfterTenderLines[null];
    this.p_FiscalDocParam1 = null;
    this.p_FiscalDocParam2 = null;
 
    //>?<
    this.p_PayTimeOut = null;
    this.p_int = null;
    this.p_string = null;
 
    //AppViewConfig params
    this.p_UserMainImage = null;
    this.p_UserLogoImage = null;
    this.p_AddMessageForStartPage = null;
 
    //AppSoundConfig params
    this.p_EnableSound = null;
    this.p_SoundAmountFull = null;
    this.p_SoundDebtNot = null;
    this.p_SoundGiveCheck = null;
    this.p_SoundInsertMoney = null;
 
    //>?<
    this.p_ParkomatName = null;
    this.p_IdParcomat = null;
 
    var ParkomatConfig = function createObjectParkomatConfig() {
 
        
        //Initializing
        this.o_DeviceParameters = {
            Active: null,
            Port: null,
            Baud: null,
            NoWokrAnError: null,
            RetriesCount: null,
            DeviceName: null,
        }
 
        o_CoinAcceptor = {
            DefParam: o_DeviceParameters
        }
 
        o_CoinDispenser = {
            DefParam: o_DeviceParameters
        }
 
        o_CashAcceptor = {
            DefParam: o_DeviceParameters
        }
 
        o_CardReader = {
            DefParam: o_DeviceParameters
        }
 
        o_BarCodeReader = {
            DefParam: o_DeviceParameters
        }
 
        o_CardDispenser = {
            DefParam: o_DeviceParameters
        }
 
        o_Eqcuiring = {
            DefParam: o_DeviceParameters
        }
 
        o_FiscalPrinter = {
            DefParam: o_DeviceParameters
        }
 
        o_CashDispenser = {
            DefParam: o_DeviceParameters
        }
 
    }
 
    //Change For Object
    function changeParams(obj) {
        this.obj = obj;
    }
 
        //Change Settings
        function changeAppTimingConfig(PayTimeOut, ShowMessageTimeOut, TimeAutoReport) {
            this.p_PayTimeOut = PayTimeOut;
            this.p_ShowMessageTimeOut = ShowMessageTimeOut;
            this.p_TimeAutoReport = TimeAutoReport;
        }
 
        function changeEquipmentConfig(CoinDispenserNominal, CashDispenserNominal1, CashDispenserNominal2, CashDispenserNominal3, CashDispenserNominal4, FiscalHeaderLines, FiscalFooterLines, FiscalItemsHeaderLines, FiscalAfterTotalLines, FiscalAfterTenderLines, FiscalDocParam1, FiscalDocParam2) {
            this.p_CoinDispenserNominal = CoinDispenserNominal;
            this.p_CashDispenserNominal1 = CashDispenserNominal1;
            this.p_CashDispenserNominal2 = CashDispenserNominal2;
            this.p_CashDispenserNominal3 = CashDispenserNominal3;
            this.p_CashDispenserNominal4 = CashDispenserNominal4;
            this.p_FiscalHeaderLines[null] = FiscalHeaderLines[header];
            this.p_FiscalFooterLines[null] = FiscalFooterLines[footer];
            this.p_FiscalItemsHeaderLines[null] = FiscalItemsHeaderLines[itemsHeader];
            this.p_FiscalAfterTotalLines[null] = FiscalAfterTotalLines[afterTotal];
            this.p_FiscalAfterTenderLines[null] = FiscalAfterTenderLines[afterTender];
            this.p_FiscalDocParam1 = FiscalDocParam1;
            this.p_FiscalDocParam2 = FiscalDocParam2;
        }
 
        function changeAppViewConfig(UserMainImage, UserLogoImage, AddMessageForStartPage) {
            this.p_UserMainImage = UserMainImage;
            this.p_UserLogoImage = UserLogoImage;
            this.p_AddMessageForStartPage = AddMessageForStartPage;
        }
 
        function changeAppSoundConfig(EnableSound, SoundAmountFull, SoundDebtNot, SoundGiveCheck, SoundInsertMoney) {
            this.p_EnableSound = EnableSound;
            this.p_SoundAmountFull = SoundAmountFull;
            this.p_SoundDebtNot = SoundDebtNot;
            this.p_SoundGiveCheck = SoundGiveCheck;
            this.p_SoundInsertMoney = SoundInsertMoney;
        }
 
        
    
        //Serializing
        function serializing(essence) {
            JSON.stringify(essence);
        }
 
    //Saving
 
        function saving(obj) {
            if (confirm("Сохранить настройки?")) {
                this.obj = obj;
                $.ajax({
                    Type: "POST",
                    dataType: "json",
                    url: "./1.html",//?
                    contentType: 'application/json, charset=utf8',
                    data: JSON.stringify(obj),
                    //data: serializing(obj);
                    success:alert("Настройки сохранены.")
 
                })
            } else {
                alert("Сохранение отменено.")
            }
        }
    
 
 
</script>
Вопрос - как реализовать отображение и сохранение на странице?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.02.2014, 14:03
Ответы с готовыми решениями:

Создание страницы настроек плагина
Кто то использует при создании страницы настроек плагина add_option или же можно без этой функции....

Сохранение настроек страницы в Delphi
Здравствуйте дорогие эксперты... Я понимаю, что тема уже избитая, но как сделать я не понял... Мне...

Незавершение редактирования страницы в All in One SEO Pack
Здравствуйте. Возможно ли возникновение ошибки &quot;The requested URL /vizualizaciya-intererov was...

Изменить параметры страницы без редактирования контента
Многостраничный файл .doc с текстом, формулами, рисунками отредактирован для печати на А3 лист....

0
27.02.2014, 14:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.02.2014, 14:03
Помогаю со студенческими работами здесь

После редактирования страницы отображается 404 ошибка
компания занимается пожарным оборудованием. после редактирования граф &quot;ключ слова&quot;, &quot;теги&quot; на одной...

Не обновляется WebBrowser после редактирования HTML-страницы
установил браузер в приложении, после редактирования HTML-страницы в приложении ничего не...

Создание настроек
Здравствуйте, помогите доработать идею. Вообщем работаю над интернет магазином, так вот надо что то...

Поиск модуля\компонента, для редактирования содержимого страницы пользователем
Добрый день, нужно сделать на странице что-то типо таблицы экселя, чтобы пользователь который зашел...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru