<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="MessageProvider" type="Pattern.Provider.MessageProviderConfigurationSection, Pattern.Provider" />
</configSections>
<MessageProvider defaultProvider="SqlMessageProvider">
<providers>
<add name="XmlMessageProvider" type="Pattern.Provider.XmlMessageProvider, Pattern.Provider" connectionStringName="XMLConnection" />
<add name="SqlMessageProvider" type="Pattern.Provider.SqlMessageProvider, Pattern.Provider" connectionStringName="SqlConnection" />
</providers>
</MessageProvider>
<connectionStrings>
<add name="SqlConnection" connectionString="server=.;database=db;uid=sa;pwd=sa" />
<add name="XmlConnection" connectionString="XMLPath" />
</connectionStrings>
</configuration>
public partial class Provider : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(Message.Insert(new MessageModel("插入", DateTime.Now)));
Response.Write("<br />");
Response.Write(Message.Get()[0].Message + " " + Message.Get()[0].PublishTime.ToString());
}
}
True SQL方式,連接字符串是server=.;database=db;uid=sa;pwd=sa 2007-1-22 8:21:44 OK
透過 defaultProvider 切換實作,無需修改程式碼即可在 SQL 與 XML 儲存方式間切換,展現提供者模式「組態優於程式碼」的優勢。