小编SAL*_*SAL的帖子

使用XElement中的命名空间和模式创建XML

一个冗长的问题 - 请耐心等待!

我想以编程方式创建一个带有命名空间和模式的XML文档.就像是

<myroot 
    xmlns="http://www.someurl.com/ns/myroot" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://www.someurl.com/ns/myroot http://www.someurl.com/xml/schemas/myschema.xsd">

    <sometag>somecontent</sometag>

</myroot>
Run Code Online (Sandbox Code Playgroud)

我正在使用相当出色的新LINQ东西(这对我来说是新的),并且希望使用XElement来完成上述操作.

我的对象上有一个ToXElement()方法:

  public XElement ToXElement()
  {
     XNamespace xnsp = "http://www.someurl.com/ns/myroot";

     XElement xe = new XElement(
        xnsp + "myroot",
           new XElement(xnsp + "sometag", "somecontent")
        );

     return xe;
  }
Run Code Online (Sandbox Code Playgroud)

这正确地给了我命名空间,因此:

<myroot xmlns="http://www.someurl.com/ns/myroot">
   <sometag>somecontent</sometag>
</myroot>
Run Code Online (Sandbox Code Playgroud)

我的问题:如何添加架构xmlns:xsi和xsi:schemaLocation属性?

(顺便说一下,我不能使用简单的XAtttributes,因为我在属性名称中使用冒号":"会出错...)

或者我需要使用XDocument或其他LINQ类?

谢谢...

c# xelement schema namespaces

12
推荐指数
2
解决办法
8710
查看次数

在C#中使用正则表达式匹配复数

我希望在C#中使用正则表达式来搜索术语,我想在搜索中包含这些术语的复数形式.例如,如果用户想要搜索"管道",那么我也想返回"管道"的结果.

所以我可以这样做......

string s ="\\b" + term + "s*\\b";
if (Regex.IsMatch(bigtext, s) {  /* do stuff */ }
Run Code Online (Sandbox Code Playgroud)

当用户输入"压力"并仍然为"管道"/"管道"工作时,我如何修改上述内容以允许我匹配"压力"?

c# regex plural

8
推荐指数
2
解决办法
2003
查看次数

ASP.NET AJAX:在页面加载完成后触发UpdatePanel

我确信这很容易,但我无法弄清楚:

我有一个ASP.NET页面,上面有一些UpdatePanels.我希望页面完全加载UpdatePanels中的一些"请稍候"文本.然后,一旦页面完全加载,我想调用代码隐藏函数来更新UpdatePanel.

关于Javascript和代码隐藏的哪些组合我需要实现这个想法的任何想法?

SAL

PS:我已经尝试将我的函数调用放在Page_Load中,但是在页面交付之前运行代码,并且由于我想运行的函数需要一些时间,因此页面加载时间太长.

javascript asp.net asp.net-ajax

7
推荐指数
2
解决办法
2万
查看次数

从Web服务返回XElement

是否可以从Web服务返回XElement(在C#/ asp.net中)?

尝试一个返回XElement的简单Web服务:

[WebMethod]
public XElement DoItXElement()
{
  XElement xe = new XElement("hello",
     new XElement("message", "Hello World")
     );

  return xe;
}
Run Code Online (Sandbox Code Playgroud)

编译很好但是如果你尝试运行它就可以了

Cannot use wildcards at the top level of a schema.

我发现这篇帖子暗示这是 .net中的一个错误.

那么......我可以从Web服务返回一个XElement吗?如果是这样,怎么样?

谢谢.

asp.net xelement web-services

4
推荐指数
1
解决办法
4083
查看次数

我如何知道某个对象是否已被引用?

在附加到Excel 2003电子表格的某些VBA中,我需要使用一些需要一段时间才能实例化的对象 - 所以我只想做一次'set'事情......

显示代码比编写解释更容易!

' Declare the expensive object as global to this sheet
Dim myObj As SomeBigExpensiveObject

Private Sub CommandButtonDoIt_Click()

   ' Make sure we've got a ref to the object
   If IsEmpty(myObj) Then  ' this doesn't work!
      Set myObj = New SomeBigExpensiveObject
   End If

   ' ... etc

End Sub
Run Code Online (Sandbox Code Playgroud)

如何检查myObj是否已设置?

我尝试过IsNull(myObj)和IsEmpty(myObj) - 无论myObj的状态如何,都跳过'set'.我做不到

if myObj = Nil then
Run Code Online (Sandbox Code Playgroud)

要么

if myObj = Empty then
Run Code Online (Sandbox Code Playgroud)

要么

if myObj = Nothing then
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

SAL

excel vba excel-2003 excel-vba nothing

1
推荐指数
1
解决办法
1154
查看次数