dataset

阅读 / 问答 / 标签

DataSet result=new DataSet();

DataSet result=new DataSet(); // 新建一个数据集(就是表的集合)result=new TestOnline.Class1().hsggetdata(sql); // 调用类Class1的方法hsggetdata()得到数据集result,sql就是一个sql语句

excel转datasetvs2022

publicDataSetImportExcel(stringstrFileName)//strFileName指定的路径+文件名.xls{if(strFileName!=""){stringconn="Provider=Microsoft.Jet.OLEDB.4.0;DataSource="+strFileName+";ExtendedProperties=Excel8.0" ;stringsql="select*from[Sheet1$]";OleDbDataAdapterda=newOleDbDataAdapter(sql,conn) ;DataSetds=newDataSet() ;try{da.Fill(ds,"datatable");}catch{}returnds;}else{returnnull;}}这个方法我经常用,转成dataset和datatable没什么太大区别吧,反正ds.Tables[0]就是dataTable了

Spark RDD,DataFrame和DataSet的区别

RDD、DataFrame和DataSet是容易产生混淆的概念,必须对其相互之间对比,才可以知道其中异同。RDD和DataFrameRDD-DataFrame上图直观地体现了DataFrame和RDD的区别。左侧的RDD[Person]虽然以Person为类型参数,但Spark框架本身不了解 Person类的内部结构。而右侧的DataFrame却提供了详细的结构信息,使得Spark SQL可以清楚地知道该数据集中包含哪些列,每列的名称和类型各是什么。DataFrame多了数据的结构信息,即schema。RDD是分布式的 Java对象的集合。DataFrame是分布式的Row对象的集合。DataFrame除了提供了比RDD更丰富的算子以外,更重要的特点是提升执行效率、减少数据读取以及执行计划的优化,比如filter下推、裁剪等。提升执行效率RDD API是函数式的,强调不变性,在大部分场景下倾向于创建新对象而不是修改老对象。这一特点虽然带来了干净整洁的API,却也使得Spark应用程序在运行期倾向于创建大量临时对象,对GC造成压力。在现有RDD API的基础之上,我们固然可以利用mapPartitions方法来重载RDD单个分片内的数据创建方式,用复用可变对象的方式来减小对象分配和GC的开销,但这牺牲了代码的可读性,而且要求开发者对Spark运行时机制有一定的了解,门槛较高。另一方面,Spark SQL在框架内部已经在各种可能的情况下尽量重用对象,这样做虽然在内部会打破了不变性,但在将数据返回给用户时,还会重新转为不可变数据。利用 DataFrame API进行开发,可以免费地享受到这些优化效果。减少数据读取分析大数据,最快的方法就是 ——忽略它。这里的“忽略”并不是熟视无睹,而是根据查询条件进行恰当的剪枝。上文讨论分区表时提到的分区剪 枝便是其中一种——当查询的过滤条件中涉及到分区列时,我们可以根据查询条件剪掉肯定不包含目标数据的分区目录,从而减少IO。对于一些“智能”数据格 式,Spark SQL还可以根据数据文件中附带的统计信息来进行剪枝。简单来说,在这类数据格式中,数据是分段保存的,每段数据都带有最大值、最小值、null值数量等一些基本的统计信息。当统计信息表名某一数据段肯定不包括符合查询条件的目标数据时,该数据段就可以直接跳过(例如某整数列a某段的最大值为100,而查询条件要求a > 200)。此外,Spark SQL也可以充分利用RCFile、ORC、Parquet等列式存储格式的优势,仅扫描查询真正涉及的列,忽略其余列的数据。执行优化人口数据分析示例为了说明查询优化,我们来看上图展示的人口数据分析的示例。图中构造了两个DataFrame,将它们join之后又做了一次filter操作。如果原封不动地执行这个执行计划,最终的执行效率是不高的。因为join是一个代价较大的操作,也可能会产生一个较大的数据集。如果我们能将filter下推到 join下方,先对DataFrame进行过滤,再join过滤后的较小的结果集,便可以有效缩短执行时间。而Spark SQL的查询优化器正是这样做的。简而言之,逻辑查询计划优化就是一个利用基于关系代数的等价变换,将高成本的操作替换为低成本操作的过程。得到的优化执行计划在转换成物 理执行计划的过程中,还可以根据具体的数据源的特性将过滤条件下推至数据源内。最右侧的物理执行计划中Filter之所以消失不见,就是因为溶入了用于执行最终的读取操作的表扫描节点内。对于普通开发者而言,查询优化 器的意义在于,即便是经验并不丰富的程序员写出的次优的查询,也可以被尽量转换为高效的形式予以执行。RDD和DataSetDataSet以Catalyst逻辑执行计划表示,并且数据以编码的二进制形式被存储,不需要反序列化就可以执行sorting、shuffle等操作。DataSet创立需要一个显式的Encoder,把对象序列化为二进制,可以把对象的scheme映射为SparkSQl类型,然而RDD依赖于运行时反射机制。通过上面两点,DataSet的性能比RDD的要好很多。DataFrame和DataSetDataset可以认为是DataFrame的一个特例,主要区别是Dataset每一个record存储的是一个强类型值而不是一个Row。因此具有如下三个特点:DataSet可以在编译时检查类型并且是面向对象的编程接口。用wordcount举例://DataFrame// Load a text file and interpret each line as a java.lang.Stringval ds = sqlContext.read.text("/home/spark/1.6/lines").as[String]val result = ds.flatMap(_.split(" ")) // Split on whitespace.filter(_ != "") // Filter empty words.toDF() // Convert to DataFrame to perform aggregation / sorting.groupBy($"value") // Count number of occurences of each word.agg(count("*") as "numOccurances").orderBy($"numOccurances" desc) // Show most common words first后面版本DataFrame会继承DataSet,DataFrame是面向Spark SQL的接口。//DataSet,完全使用scala编程,不要切换到DataFrameval wordCount =ds.flatMap(_.split(" ")).filter(_ != "").groupBy(_.toLowerCase()) // Instead of grouping on a column expression (i.e. $"value") we pass a lambda function.count()DataFrame和DataSet可以相互转化, df.as[ElementType] 这样可以把DataFrame转化为DataSet, ds.toDF() 这样可以把DataSet转化为DataFrame。

找不到类型或命名空间名称“DataSet”(是否缺少 using 指令或程序集引用?)

找不到类型或命名空间名称“DataSet”是设置错误造成的,解决方法为:1、首先需要检查这两个地方是否添加引用..。2、接下来检查方案里面的项目间是否生成依赖。3、然后检查目标框架,一般前面没问题都是框架版本不一致导致引用不能用的问题。4、最后调用关键字那么namespace即可。

Recordset与Dataset的详细的不同点

Recordset是一个连接或断开的(通过使用游标)的记录集合,被定义成数据表。DataSet是一个断开的记录集合,它可以作为在内存中使用的数据集。  Recordset和数据的提供者有关:有些数据提供者不支持一些recordset的方法和特性。相反,DataSet的不同方法例如查询、排序、筛选和更新等等,都是独立于数据提供者的。  当新版本的ADO允许recordset被保存或转换到XML以至于数据能被传递到应用程序里和越过防火墙,DataSet则不需要转换就能完成相同的任务,因为DataSet在XML中被声明过。  Recordset是非类型的,意思是它把每个数据作为variant变量来存储。然而,DataSet是强类型的,它把数据按照原来的类型存储。强类型意味着更规范的编程方式和减少错误。  通过ADO的recordset来更新数据库是繁琐的、低效率的和低成功率的。举个例子,如果有五十个记录要被更新,还有一个记录不能被更新,数据库将拒绝整个recordset.这个问题在DataSet中就不存在,因为DataSet能通过它的rowerror特性来一行一行的捕捉错误。除了数据,DataSet也能被增加或修改其关系、列、表和类似对象,而且不需要多重的数据库连接。  最后,在recordset中,通常用循环的办法来取出数据。在DataSet中,数据视图被创建并绑定到服务器控件上,因此,可以不需要混合表示和数据存取代码就能表示数据。这是很简洁的编程方式。  总之,DataSet和recordset是完全不相同的。DataSet可以理解为是一种升级的recordset.在没有对ADO.NET的DataSet和ADO的recordset进行性能上的测试和比较时,综上所述,DataSet应该是比较有效的。

C#dataset属性

datasets1=newdataset();datasets2=newdataset();datasets3=newdataset();datasets4=newdataset();s1.merge(s2,false,missingschemaaction.ignore);s1.merge(s3,false,missingschemaaction.ignore);s1.merge(s4,false,missingschemaaction.ignore);s1就是合并后的数据集,之后未dataguid的tablestyle属性赋值为s1中的一张表

什么是.dataset文件

就是一个数据源文件吧,做水晶报表的?

如何对dataset做一下过滤操作

你为什么不直接用sql做select distinct或者select xxx group by groups,而要放在dataset里操作呢?

c# DataSet 的用法

DataSet类是内存中数据的复杂容器。DataSet类包含了DataTable实例的集合,DataTable实例包含了保存在数据集中的关系数据。每个DataTable实例包含DataColumn实例的集合用来定义表中的数据的架构,还包含DataRow实例的集合用来以数据行方式访问其中包含的数据。数据集还允许使用乐观并发处理方法更新数据库,为了支持这种功能,数据表对象中的每个数据行会跟踪一个RowState标志,来标识数据行的状态是未修改、已修改、新增或已删除。数据表还维护着每个已修改数据行的一个附加拷贝,这样就可以同时保留从数据库中取出的原值和当前值。使用这些数据就可以检测到,在数据集被提交修改的这段时间,其他人是否已经修改可数据库中的值。使用DataSet对象更新数据库,我们可以使用数据适配器的Update方法。Update方法的功能与适配器的Fill方法类似。唯一不同 的是Update方法会查找数据集中的每个数据表的每个数据行,当它发现某个数据行状态为已修改、新增或已删除的时候,它就会为每个这样的数据行执行一个单独的命令。数据适配器使用UpdateCommand、InsertCommand和DeleteCommand等属性引用的SqlCommand对象来执行这些命令。DataSet类型还支持在内部包含的数据表上定义约束,包括主键约束、唯一约束和外键约束等。DataView可以用来排序或过滤包含在数据表的数据,而不用修改数据表的实际内容,这与数据库中的数据表上定义的视图概念是非常类似的。

如何使用DataSet修改数据库

使用 DataAdapter 更新数据源需要注意:a)如果 SelectCommand 返回 OUTER JOIN 的结果,则 DataAdapter 不会为生成的 DataTable 设置 PrimaryKey 值。您必须自己定义PrimaryKey 以确保正确解析重复行.b)如果对 DataSet、DataTable 或 DataRow 调用 AcceptChanges,则将使 DataRow 的所有 Original 值都将被重写为该 DataRow 的 Current 值。如果已修改将该行标识为唯一行的字段值,那么当调用 AcceptChanges 后,Original 值将不再匹配数据源中的值。看看下面例子:// Assumes connection is a valid SqlConnection.SqlDataAdapter dataAdpater = new SqlDataAdapter("SELECT CategoryID, CategoryName FROM Categories", connection);dataAdpater.UpdateCommand = new SqlCommand("UPDATE Categories SET CategoryName = @CategoryName " +"WHERE CategoryID = @CategoryID" , connection);dataAdpater.UpdateCommand.Parameters.Add("@CategoryName", SqlDbType.NVarChar, 15, "CategoryName");SqlParameter parameter = dataAdpater.UpdateCommand.Parameters.Add("@CategoryID", SqlDbType.Int);parameter.SourceColumn = "CategoryID";parameter.SourceVersion = DataRowVersion.Original;DataSet dataSet = new DataSet();dataAdpater.Fill(dataSet, "Categories");DataRow row = dataSet.Tables["Categories"].Rows[0];row ["CategoryName"] = "New Category";dataAdpater.Update(dataSet, "Categories");插入、更新和删除的排序在许多情况下,以何种顺序向数据源发送通过 DataSet 作出的更改是相当重要的。例如,如果已更新现有行的主键值并且添加了具有新主键值的新行,则务必要在处理插入之前处理更新。可以使用 DataTable 的 Select 方法来返回仅引用具有特定 RowState 的 DataRow 数组。然后可以将返回的 DataRow 数组传递到 DataAdapter 的 Update 方法来处理已修改的行。通过指定要更新的行的子集,可以控制处理插入、更新和删除的顺序。示例如下:DataTable table = dataSet.Tables["Customers"];// First process deletes.adapter.Update(table.Select(null, null, DataViewRowState.Deleted));// Next process updates.adapter.Update(table.Select(null, null, DataViewRowState.ModifiedCurrent));// Finally, process inserts.adapter.Update(table.Select(null, null, DataViewRowState.Added));

如何显示DataSet中的数据

dataset可以理解为内存数据库,里面包括了表,而表下面有行和列。因此,第一步要确定是哪个表,可通过索引或表名来获取。示例如下:labeltext=dataset11.tables("comm.users").rows[0]["user_name"].tostring()labeltext=dataset11.tables("comm.users").rows(0).item("user_name")label.text=ds.tables(0).rows(i).item("列名")label.text=ds.tables[0].rows[0]["filed"]label.text=ds.tables[0].rows[x][y]

如何获取DataSet中数据

楼上正解

dataset是什么,用法怎样的

DataTable的集合

dataset是什么意思

数据集

C#里的DataSet到底是干什么用的,怎么用?哪位高手帮我讲解讲解,谢谢啦!

百度出来一大堆教程。

在DataSet中,如何对数据进行分类汇总

private void GetRowsByFilter(){DataTable myTable;myTable = DataSet1.Tables["Orders"];// Presuming the DataTable has a column named Date.string strExpr;string strSort;strExpr = "Date > "1/1/00"";// Sort descending by column named CompanyName.strSort = "CompanyName DESC";DataRow[] foundRows;// Use the Select method to find all rows matching the filter.foundRows = myTable.Select(strExpr, strSort);// Print column 0 of each returned row.for(int i = 0; i < foundRows.Length; i ++){Console.WriteLine(foundRows[i][0]);}}

c# 中dataset的属性

看帮助文档里面有的

dataset是类还是对象?具体讲解一下dataset的知识。。。

还是自己找资料看一下吧

dataset的结构

定义DataSet架构的四种方法:1.直接使用DataSet API来创建DataTable ,DataColumn,DataRelation部分实例代码: //方法一:使用DataSet API DataSet ds = new DataSet(); DataTable stu_tb = new DataTable(“Student“); ds.Tables.Add(stu_tb); ds.Tables[0].Columns.Add(“stuID“, typeof(int)); ds.Tables[0].Columns.Add(“stuName“, typeof(string)); ds.Tables[0].Columns.Add(“stuNum“,typeof (string)); /*---创建另一个具体信息表---- */ ds.Tables.Add(“StuInfo“); ds.Tables[1].Columns.Add(“stuNum“,typeof (string )); ds.Tables[1].Columns.Add(“phone“,typeof (string )); ds.Tables[1].Columns.Add(“address“,typeof (string)); ds.Tables[1].Columns.Add(“Major“,typeof (string )); /*---两表建立关联---*/ ds.Relations.Add(ds.Tables[0].Columns[“stuNum“], ds.Tables[1].Columns[“stuNum“]);2.通过一个DataAdapter类,使用数据库元数据来推断出架构。部分实例代码:DataSet ds;SqlDataAdapter sdr=new SqlDataA

类型化DataSet的优点和缺点是什么?

最明显的优点是表名、字段名都可以自动提示,大大增加输入效率和降低出错概率,缺点就是当数据源改变的时候更改比较麻烦吧。

简述DATASET的结构

dataset是一个离线的数据集,所谓离线,就是可以将数据从数据库中读取出来,放在里面,它本身存在于内存中;对它里面的数据进行操作的时候是在内存中完成的,不必保持与数据库的连接。一个dataset里面有若干个数据表dataTable, 一个数据表中有若干数据行dataRow和若干数据列dataColumnhttp://img.my.csdn.net/uploads/201303/08/1362733530_2745.png理解了dataset的内部结构,我们就可以做一些有用的事情1、判断dataTable里面是不是有数据if(ds.Tables[0].Rows.Count>0) //判断第一张表里面的行数是不是大于0,大于0证明有数据,反之则没有数据{}2、取出某个单元格里的值int id= ds.Tables[0].Rows[0]["Permission_ID"] //ds是指dataset,dataset里面第一张表的第一行列名为"Permission_ID"的那个单元格的值,取出来赋给变量。

data和dataset的区别

data是单复同行, 本身单数应该是datum 但是现在一般data单复数都可以dataset是数据组。这个没有一个很明确的定义,定义比较主观,主要看你以什么作为你的base,就是基础单位。比如以人员作为单位,那么一个人的近10年的成绩资料就是data, 一个班的近10年成绩资料就是dataset。如果你以年份来做单位,那么就变了,你一个班的2013年单一年的成绩资料是一份data,近10年来的记录是dataset。这里data和database的定义是根据你单位的不同而变化的。

delphi的DBgrid怎么获取当前记录的上一条bookmark,dbgrid的数据源是dataset

直接去dataset对应的query上的数据就好啦

刚入门时老师非要合并dataset时batch effect困扰许久

一、什么是批次效应 批次效应(batch effect),表示样品在不同批次中处理和测量产生的与试验期间记录的任何生物变异无关的技术差异。批次效应是高通量试验中常见的变异来源,受日期、环境、处理组、实验人员、试剂、平台等一些非生物因素的影响。 合并分析不同批次的数据时,平常的标准化方法不足以调整批次之间的差异。如果批次效应比较严重,这些差异就会干扰实验结果,我们就不能够判断得到的差异表达的基因是来源于想要研究的因素,还是和批次相关。 批次效应不能被消除,只有尽可能的降低。校正批次效应的目的是,减少批次之间的差异,尽量让多个批次的数据重新组合在一起,这样下游分析就可以只考虑生物学差异因素。 二、处理方法 目前已经有多种处理批次差异的方法。[2] 批次效应处理方法 三、哪种方法比较好 一项研究比较了6种去除批次效应的方法,其中包括ComBat方法(parametric prior method,ComBat_p和non-parametric method,ComBat_n)、代理变量法(Surrogate variable analysis,SVA)、基于比值的方法(Geometric ratio-based method,Ratio_G)、平均中心方法(Mean-centering,PAMR)和距离加权判别(Distance-weighted discrimination,DWD)方法,综合多种指标认为ComBat在精确性、准确性和整体性能方面(precision, accuracy and overall performance)总体优于其他方法。 四、ComBat方法的算法 模型的假设是基于位置和尺度(Location and scale,L/S)的调整。L/S调整可以定义为一系列广泛的调整,其中为数据在批次内的位置(均值)和/或规模(方差)假设了一个模型,然后调整批次以满足假设模型的规范。因此,L/S批次调整假设批次效应可以通过标准化批次之间的均值和方差来建模。这些调整可以从简单的基因范围的均值和方差标准化,到复杂的基因间线性或非线性调整。 模型:Yijg = αg + Xβg + γig + δigεijg Yijg表示来自批次i的样品j的基因g的表达值。其中αg是基因g的平均表达值,X是样本条件的设计矩阵,βg是对应于X的回归系数向量。误差项εijg服从期望值为0和方差为σg的正态分布N(0,σg ),γig和δig表示批次i中基因g加法和乘法的批次效应。 算法分为3步: [4] 算法 五、推荐的解决方法 (1)根据分析目的确定批次效应处理方法:差异表达分析,在模型中添加批次因素;可视化,先对原数据进行校正,再使用校正后的数据进行分析。 (2)已知的批次,removeBatchEffect或ComBat;未知的批次,sva。 (3)removeBatchEffect和ComBat、sva输入的数据需要进行转换,例如取对数(rlog或logCPM)。 (4)read counts数据可使用ComBat-Seq或svaseq。 六、差异表达分析的批次校正 很多人以为去除批次效应是要改变你的表达矩阵,新的表达矩阵然后去走差异分析流程,其实大部分的差异分析流程包里面,人家内置好了考虑你的批次效应这样的混杂因素的函数用法设计。例如: 构建DESeq2对象时的设计公式: design = ~ batch + conditions 如果要合并不同批次的数据进行差异表达分析,建议直接把批次信息加入到构建模型里面。但是这种方法并没有改变原数据。如果你确实一定要亲眼看看批次效应到底是如何影响这个表达矩阵的,就需要对表达矩阵做另外的处理,例如removeBatchEffect或ComBat。但是处理之后会改变counts矩阵,之后就没办法走DESeq2差异分析流程啦,仅仅是为了拿到去除批次效应前后对比的表达矩阵而已。 PCA 七、使用limma的removeBatchEffect处理批次效应 removeBatchEffect这个函数用于进行聚类或无监督分析之前,移除与杂交时间或其他技术变异相关的批次效应。它是针对芯片设计的,因此不要直接使用read counts,数据需要经过一定的标准化操作,如log转化。 removeBatchEffect只用于衔接聚类、PCA等可视化展示,不要在线性建模之前使用。因为用矫正后的数据进行差异表达分析,有两个缺陷:一是批次因素和分组因素可能重叠,所以直接对原数据矫正批次可能会抵消一部分真实生物学因素;二是低估了误差。所以,如果想做差异表达分析,但数据中又有已知的批次问题,则最好把批次效应纳入线性模型中。 removeBatchEffect用法 removeBatchEffect 八、使用SVA的ComBat处理批次效应 sva这个R包可以处理已知的和未知的批次效应,sva函数可以通过构建高维数据集的代理变量,移除批次效应和其它所有不需要的变异。如果是芯片数据用sva,高通量测序数据使用svaseq。ComBat函数可以处理已知的批次效应。 ComBat用法 ComBat 九、使用sva处理未知的批次 SVA具有移除批次效应和高通量测序中其它不需要的变异的功能。使用sva识别和构建高维数据集代理变量(surrogate variables),代理变量是由高维数据直接构建的协变量(covariates),可用于后续分析,以调整未知、未建模或潜在的噪声源。 sva函数的输出本身就是代理变量。它们可以包含在全模型矩阵和空模型矩阵中,然后与数据矩阵一起传递给SVA包中的f.pvalue函数,以计算参数F检验p值,从而调整代理变量。 根据经验,当存在大量已知或未知的潜在混杂因素时,代理变量调整(sva)可能更合适。当一个或多个生物学分组已知是异质的,并且有已知的批次变量时,直接调整(ComBat)可能更合适。 sva考虑了两种类型的变量:调整变量和感兴趣的变量。例如,感兴趣变量(variables of interest)可能是癌症组与对照组;调整变量(adjustment variables)可能是病人的年龄、性别、测序时间。 建立两个模型矩阵:全模型(full model)和空模型(null model)。空模型包括所有调整变量,而不包含感兴趣的变量;全模型包括所有调整变量和感兴趣的变量。我们将试图分析感兴趣的变量与基因表达之间的关联,调整调整变量。模型矩阵可以使用model.matrix创建。sva的目标是消除所有不需要的变异来源,同时通过mod中包含的主要变量来检测对比。 注意:在我们最初的工作中,使用识别函数来测量在近似对称和连续尺度上的数据。对于通常表示为counts的测序数据,更合适的模型可能涉及使用适度的对数函数。例如,我们首先用log(counts+1)转换基因表达数据。 用法: (1)使用sva得到代理变量 (2)使用f.pvalue函数调整代理变量(calculate parametric F-test P-values adjusted for surrogate variables) (3)sva可以与差异表达分析程序一起使用,如limma、DESeq2。 References [1] Chen C, Grennan K, Badner J, Zhang D, Gershon E, Jin L, et al. Removing batch effects in analysis of expression microarray data: an evaluation of six batch adjustment methods[J]. PloS One. 2011;6(2):e17238. [2] 李飒,赵毅强.基因表达数据批次效应去除方法的研究进展[J].南京农业大学学报,2019,42(03):389-397. [3] Chen C, Grennan K, Badner J, Zhang D, Gershon E, Jin L, et al. Removing batch effects in analysis of expression microarray data: an evaluation of six batch adjustment methods[J]. PloS One. 2011;6(2):e17238. [4]陈天成,侯艳,李康.基因组学数据整合中的批次效应移除算法[J].中国卫生统计,2016,33(03):527-529+533. [5] Johnson WE, Li C, Rabinovic A. Adjusting batch effects in microarray expression data using empirical Bayes methods[J]. Biostatistics. 2007;8(1):118-27. [6] Leek JT, Johnson WE, Parker HS, Jaffe AE, Storey JD. The sva package for removing batch effects and other unwanted variation in high-throughput experiments[J]. Bioinformatics. 2012;28(6):882-3.

ASP.NET 如何使用 dataset sqldataAdapter 进行更新

问题能够详细描述吗?

dorado5怎样用固定值获取dataset对应的对象

我们可以给HTML元素添加自定义的data-*属性。你可以给这个属性起任何名字,但在使用element.dataset API时你需要主要以下一些规则:element.dataset不能够直接拿来用,否者你会遇到报错提示用JavaScript里使用data-*属性名时,要把名称转变成驼峰式命名(Camel-Case)名称不能以xml打头名称里不能有大写字母假设页面里有下面的元素存在:<div id="myDiv" data-name="myDiv" data-id="myId" data-my-custom-key="This is the value"></div>要想获取这个data-id属性,你的代码应该写成这样:// Get the elementvar element = document.getElementById("myDiv");// Get the idvar id = element.dataset.id;要想获取data-my-custom-key属性值,你的代码应该写成这样:// Retrieves "data-my-custom-key"var customKey = element.dataset.myCustomKey;给自定义属性赋值的方法是这样的:// Sets the value to something elseelement.dataset.myCustomKey = "Some other value";// Element would be:// <div id="myDiv" data-name="myDiv" data-id="myId" // data-my-custom-key="Some other value"></div>如果一个自定义属性并不存在,但在程序中你给它赋值,它会自动创建:// Set new data- attributeelement.dataset.mootoolsFtw = "true";// Element would be:// <div id="myDiv" data-name="myDiv" data-id="myId" //data-my-custom-key="Some other value" data-mootools-ftw="true">//</div>

如何将string类型转成dataset

string类型是支持序列化的 可直接转,方法如下://sd为你想转换的字符string sd="sdfs;dfksdjf";XmlSerializer s=new XmlSerializer(typeof(string),"http://mystring");TextWriter w=new StreamWriter("c:\aaa.xml");s.Serialize(w,sd);w.Close();不要忘了using System.Xml
 首页 上一页  1 2