Silverlight中使用配置文件的方法

Silverlight作为一个精简版的.NET framework,没有为配置文件提供相应的支持。我们无法像在winForm中那样使用System.Configuration.ConfigurationManager?来访问app.config中的配置信息。所以比较好的一个方式就是自己写一个配置文件管理类ConfigurationManager。

首先,在工程中创建一个XML文件,取名为app.config,记得放在工程的根目录,方便后面设置路径。把Build Action设成Resource,随便在app.config中写点东西。

?

<?xml
version="1.0"
encoding="utf-8" ?>

?

<configuration>

?

<appSettings>

?

<add
key="name"
value="srzhz"/>

?

<add
key="university"
value="Tsinghua University"/>

?

</appSettings>

?

</configuration>

然后要开始创建这个ConfigurationManager类了。

首先在工程上按右键点击Add Reference,之后选择System.Xml.Linq。(如果没加的话无法引入命名空间System.Xml.Linq)

然后在ConfigurationManager类中写入如下代码

?

using System;

using System.Windows;

using System.Collections.Generic;

using System.Windows.Resources;

using System.IO;

using System.Xml.Linq;

using System.Reflection;

?

namespace SilverlightApplication92

{

///
<summary>

?

/// Access appSettings from a configuration file

?

///
</summary>

?

///
<remarks>Your appConfig file must be in the root of your applcation</remarks>

?

public
static
class
ConfigurationManager

{

static ConfigurationManager()

{

AppSettings = new
Dictionary<string, string>();

ReadSettings();

}

?

public
static
Dictionary<string, string> AppSettings { get; set; }

?

private
static
void ReadSettings()

{

// Get the name of the executing assemby - we are going to be looking in the root folder for

// a file called app.config

string assemblyName = Assembly.GetExecutingAssembly().FullName;

assemblyName = assemblyName.Substring(0, assemblyName.IndexOf(‘,‘));

string url = String.Format("{0};component/app.config", assemblyName);

StreamResourceInfo configFile = Application.GetResourceStream(new
Uri(url, UriKind.Relative));

if (configFile != null && configFile.Stream != null)

{

Stream stream = configFile.Stream;

XDocument document = XDocument.Load(stream);

foreach (XElement element in document.Descendants("appSettings").DescendantNodes())

{

AppSettings.Add(element.Attribute("key").Value, element.Attribute("value").Value);

}

}

}

}

}

之后你就可以通过调用这个类来获得配置信息了。例如:

String name = ConfigurationManager.AppSettings["name"];

时间: 2024-10-24 09:48:46

Silverlight中使用配置文件的方法的相关文章

java中读取配置文件的方法

转自:http://blog.csdn.net/stypace/article/details/38414871 一.使用org.apache.commons.configuration 需要使用的是jar包:commons-collections-3.2.1.jar.commons-configuration-1.10.jar.commons-lang-2.6.jar和commons-logging-1.2.jar. 可以读取的配置文件:xml和properties 1.读取xml文件 [ja

Silverlight 中图片路径的设置

在Silverlight中图片的设置方法有几种 如上图在一个工程中有个images文件夹,buttons.xaml页面中的Image控件要引用一张图片 第一种方法 xaml: <Image x:Name="myImage" Source="/SilverlightCreate;component/images/MyImage1.png" /> code: myImage.Source = new BitmapImage(new Uri("/Si

ArcGIS API for Silverlight中加载Google地形图(瓦片图)

原文:ArcGIS API for Silverlight中加载Google地形图(瓦片图) 在做水利.气象.土地等行业中,若能使用到Google的地形图那是再合适不过了,下面就介绍如何在ArcGIS API for Silverlight中加载Google地 形图.先上一个图,初步制作,待后续继续改进 ArcGIS API for Silverlight 中的ArcGISTiledMapServiceLayer图层,继承自TiledMapServiceLayer.如果想实现自己的缓存地图图 层

笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDispatcher 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 <filter>     <filter-name>struts2</filter-name>     <filter-class>org.apache.struts2.di

CodeIgniter中驱动器的使用方法

驱动器“Drivers”是CodeIgniter框架从2.0版本开始加入的新特性.正如中文版译者所言: 笔者看了这三篇英文参考,加上自己的一些理解,对官方文档关于驱动器的这一部分进行了一些补充. 1.什么是驱动器 驱动器是一种特殊类型的类库,它有一个父类和任意多个子类.子类可以访问父类, 但不能访问兄弟类.在你的控制器中,驱动器为你的类库提供了 一种优雅的语法,从而不用将它们拆成很多离散的类. 一般我们看到父类和子类,我们会毫不犹豫的认为他们是继承和派生的关系,但是这里需要注意的是,驱动器中所提

C#开发中使用配置文件

C#开发中使用配置文件对象简化配置的本地保存 0x00 起因 程序的核心是数据和逻辑,开发过程中免不了要对操作的数据进行设置,而有些数据在程序执行过程中被用户或程序做出的修改是应该保存下来的,这样程序在下次运行时可以保留上次的一些设置.同样有时我们希望修改某些设置而不需要重新编译程序,这样也可以通过修改本地配置文件达到目的.之前在网上看到过一篇文章,讲的是小程序或测试类的程序应该追求效率,相关配置完全可以硬编码到代码里,无需写到配置文件里.关于什么属于小程序并没有一个明显的界定,至于要不要写到配

[Win10]1 WPF和WP8 Silverlight中的导航问题

一.Frame.Page框架的相关介绍 1.Frame类: 继承层次结构 System.Object   System.Windows.Threading.DispatcherObject     System.Windows.DependencyObject       System.Windows.Media.Visual         System.Windows.UIElement           System.Windows.FrameworkElement           

【Nutch2.2.1源码分析之一】Nutch加载配置文件的方法

1.NutchConfiguration.java用于加载及获取Nutch的相关参数. Utility to create Hadoop Configurations that include Nutch-specific  resources. 即它会加载hadoop及nutch中的参数文件. 关键是2个create()方法,它加载了参数文件的同时,又返回了Configuration对象. 2.不带参数的create方法 public static Configuration create()

ClassLoader.getResourceAsStream(name); 获取配置文件的方法

ClassLoader.getResourceAsStream(name);路径问题 InputStream in = getClass().getResourceAsStream('/'+"spring-beans.dtd"); 表示从classs目录下面的找文件,文件放在src下面就可以了.InputStream in = getClass().getResourceAsStream("spring-beans.dtd"); 表示从当前classs下面的路径找文