数据库批量更新,添加!有关XML的操作
得到一个需要处理的XMl
private string GetSaveItem()
{
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml("<menuCollection/>");
foreach (TreeNode node in trvAccessRight.CheckedNodes)
{
if (node != trvAccessRight.Nodes[0])
{
XmlElement content = xmlDoc.CreateElement("menuItem");
content.SetAttribute("menuID", node.Value);
xmlDoc.DocumentElement.AppendChild(content);
}
}
return xmlDoc.OuterXml;
}
将以上的获得的XMl字符串当参数传入存储过程中,
存储如下写
ALTER PROCEDURE [dbo].[usp_UserGroup_SetRight]
(@GroupID INT ,@ChangedBy VARCHAR(50) ,@MenuXml XML)
AS
BEGIN
--SET XACT_ABORT ON
BEGIN TRY
BEGIN TRANSACTION
--delete
DELETE
from tbl_SysUserGroupRight
WHERE GroupId = @GroupID
--insert
INSERT INTO tbl_SysUserGroupRight
(
GroupId
,MenuID
,ChangedBy
,ChangedOn
)
SELECT @GroupID
,menuList.row.value(N'@menuID' ,'VARCHAR(50)') AS MenuID
,@ChangedBy
,GETDATE()
from @MenuXml.nodes('/menuCollection/menuItem') AS menuList(row)
COMMIT TRANSACTION
RETURN 1
END TRY
BEGIN CATCH
ROLLBACK TRANSACTION
RETURN 0
END CATCH
更新可以借鉴上面的添加操作,
相关文档:
~/ 在runat=server的控件中,自动的被解析为Request.ApplicationPath的值,是当前应用程序级程序的目录 在例子中是:/WebSite
./或者什么都不写:表示当 ......
大多数浏览器都内建了供读取和操作 XML 的 XML 解析器。
解析器把 XML 转换为 JavaScript 可存取的对象。
但是IE和其它浏览器是有很大区别的
解析 XML 文件 - 跨浏览器实现
<html>
<body>
<mce:script type="text/javascript"><!--
try //针对IE和基于IE内核的浏览器
{
xmlD ......
一、XML只有一个Table的情况
(1)userInfo.xml
<?xml version="1.0" encoding="utf-8" ?>
<UserInfo ......
转:http://hi.baidu.com/oneshotonekill/blog/item/be68b513f7c929d7f6039e1e.html
Whitespace is not allowed before an XML Processing Instruction (< ? ... ?>). HTMLComponent.Eclipse在编辑mxml的时候提示这样的错误。检查才发现代码中在<? ?>之前存在空格。 ......