{"id":82,"date":"2006-08-17T17:03:00","date_gmt":"2006-08-17T15:03:00","guid":{"rendered":"http:\/\/www.forksoft.de\/blog\/2006\/08\/17\/konfigurationsdateien-schnell-und-flexibel\/"},"modified":"2006-10-05T14:43:07","modified_gmt":"2006-10-05T12:43:07","slug":"konfigurationsdateien-schnell-und-flexibel","status":"publish","type":"post","link":"http:\/\/www.navision-blog.de\/blog\/2006\/08\/17\/konfigurationsdateien-schnell-und-flexibel\/","title":{"rendered":"Konfigurationsdateien schnell und flexibel"},"content":{"rendered":"<p><a href=\"http:\/\/nini.sourceforge.net\/\">Nini<\/a> ist eine .Net Library mit welcher man besonders schnell hoch flexible Anwendungen mit Konfigurationsdateien erstellen kann. Die Anwendung ist denkbar einfach wie man im folgenden Beispiel sieht:<\/p>\n<div class=\"wlWriterSmartContent\" id=\"57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:b012f72e-6194-4f14-b6ac-20e155e1e8c7\" contenteditable=\"false\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #008000; \">;<\/span><span style=\"color: #008000; \"> MyApp.ini <\/span><span style=\"color: #008000; \">\n<\/span><span style=\"color: #800000; font-weight: bold; \">[<\/span><span style=\"color: #800000; \">Logging<\/span><span style=\"color: #800000; font-weight: bold; \">]<\/span><span style=\"color: #000000; \">\nFile Name <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> MyApp.log\nMessageColumns <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> <\/span><span style=\"color: #000000; \">5<\/span><span style=\"color: #000000; \">\nMaxFileSize <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> <\/span><span style=\"color: #000000; \">40000000000000<\/span><span style=\"color: #000000; \"> <\/span><\/div><\/pre>\n<\/div>\n<p>Und der C# Code zum einlesen sieht folgendermasen aus:<\/p>\n<div class=\"wlWriterSmartContent\" id=\"57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:c8898f54-4019-45a6-8e96-50e478fddc4f\" contenteditable=\"false\" style=\"padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px\">\n<pre style=\"background-color:White;\"><div><!--\n\nCode highlighting produced by Actipro CodeHighlighter (freeware)\nhttp:\/\/www.CodeHighlighter.com\/\n\n--><span style=\"color: #0000FF; \">using<\/span><span style=\"color: #000000; \"> Nini.Config; \n\nIConfigSource source <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> \n  <\/span><span style=\"color: #0000FF; \">new<\/span><span style=\"color: #000000; \"> IniConfigSource(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">MyApp.ini<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">); \n<\/span><span style=\"color: #0000FF; \">string<\/span><span style=\"color: #000000; \"> fileName <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> \n  source.Configs[<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">Logging<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">].Get(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">File Name<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">); \n<\/span><span style=\"color: #0000FF; \">int<\/span><span style=\"color: #000000; \"> columns <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> \n  source.Configs[<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">Logging<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">].GetInt(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">MessageColumns<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">);\n<\/span><span style=\"color: #0000FF; \">long<\/span><span style=\"color: #000000; \"> fileSize <\/span><span style=\"color: #000000; \">=<\/span><span style=\"color: #000000; \"> \n  source.Configs[<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">Logging<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">].GetLong(<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">MaxFileSize<\/span><span style=\"color: #000000; \">&quot;<\/span><span style=\"color: #000000; \">);<\/span><\/div><\/pre>\n<\/div>\n<p>Das war aber noch l&#228;ngst nicht alles. Noch mehr gibt es <a href=\"http:\/\/nini.sourceforge.net\/Manual\/NiniManual.htm\">hier<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Nini ist eine .Net Library mit welcher man besonders schnell hoch flexible Anwendungen mit Konfigurationsdateien erstellen kann. Die Anwendung ist denkbar einfach wie man im folgenden Beispiel sieht: ; MyApp.ini [Logging] File Name = MyApp.log MessageColumns = 5 MaxFileSize = 40000000000000 Und der C# Code zum einlesen sieht folgendermasen aus: using Nini.Config; IConfigSource source = [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[12],"tags":[],"_links":{"self":[{"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/posts\/82"}],"collection":[{"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/comments?post=82"}],"version-history":[{"count":0,"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/posts\/82\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/media?parent=82"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/categories?post=82"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.navision-blog.de\/blog\/wp-json\/wp\/v2\/tags?post=82"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}