JS代码自动排版工具
JS代码自动排版工具,可以讲杂乱的代码排版,语言选择里面可以选择中文
.NET Reflector 7.0.0.420 源代码
.NET Reflector 7.0.0.420 源代码
Silverlight.DataSetConnector
在Silverlight与Wcf等通信当中,Wcf端可用DataSetConnector将ADO.NET DataSet转换成xml字符串或Byte[]数组,传递到Silverlight端后可用DataSetConnector将xml字符串或Byte[]数组转换成Silverlight.DataTable,然后可进一步转换成可绑定到Silverlight DataGrid的IList数据集合.
Silverlight DataSet
需要下载:Silverlight.DataSet和Silverlight.DataSetConnector
下面是示例:
DataTable Dt = new DataTable();
DataColumn col1 = new DataColumn("CompanyName");
Dt.Columns.Add(col1);
DataColumn col2 = new DataColumn("Email");
Dt.Columns.Add(col2);
DataRow Row = Dt.NewRow();
Row[0] = "杭州市公司";
Row[1] = "TEL110";
Dt.Rows.Add(Row);
grid1.DataContext = Dt.GetBindableData(new Connector());
Silverlight与Wcf传递DataTable(以下均指我们下载这个程序集中的DataTable)
由于Silverlight这个程序集中使用的System.dll是C:\Program Files\Reference Assemblies\Microsoft\Framework\Silverlight\v3.0\System.dll(2.0.5.0版本)而不是.net framework中的那个System.dll(2.0.0.0.0版本),所以在Wcf中不能直接使用DataTable,那么如何将DataTable信息从Wcf传递到Silverlight中呢,就是Wcf将DataSet转成string或byte[]传递到Silverlight然后再将其还原成DataSet,看下面的代码示列:
Wcf端:
public string GetRecordset(string QuerySql)
{
DataTable Dt = DbAgent.GetRecordset(QuerySql);
DataSet ds = new DataSet();
ds.Tables.Add(Dt);
return Silverlight.DataSetConnector.Connector.ToXml(ds);
}
Silverlight端:
void client_GetRecordsetCompleted(object sender, SilverlightApplication1.DbServer.GetRecordsetCompletedEventArgs e)
{
if (e.Error != null)
{
MessageBox.Show(e.Error.Message + e.Error.StackTrace);
}
else
{
DataSet ds = new DataSet();
ds.FromXml(e.Result);
DataContext = ds.Tables[0].GetBindableData(new Connector());
}
}
此DataTable中存入的数据不是object类型的,而全是string类型的,如果数据库中存的值为null,那么取出来的值是null而不是DbNull.Value.