0

Playing with SharePoint 2010 and have noticed a very strange behavior. When uploading html or css file to the document library (by user and by C# code), SharePoint automatically adds such code into the files:

<html xmlns:mso="urn:schemas-microsoft-com:office:office" xmlns:msdt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"><head>
<!--[if gte mso 9]><xml>
<mso:CustomDocumentProperties>
******************************
</mso:CustomDocumentProperties>
</xml><![endif]-->
</head>

That's really undesired behavior, cause uploaded files will be used later for validation purposes by custom library.

Is there any possibility to avoid such behavior at SharePoint side? It's not desired to modify the validation lib.

Thanks in advance.

4

1 回答 1

0

好的。这个完成了。两种变体:

  1. 如果通过代码添加项目 - 您可以在上传之前将文件格式修改为您的自定义(例如 prjectNamehtml)。然后在事件接收器(项目添加事件)中 - 检查这是否是我们的自定义格式 - 将格式更改回 html。在这种情况下,描述的代码不会被添加到文件中。
  2. 此变体更通用,也适用于通过门户手动上传文件。需要使用事件接收器,在构造函数中我们应该获取当前的 Http Context 并将其保存到变量中。然后在 ItemAdding 中 - 我们应该检查这是否是 .html 文件 - 通过上下文获取它的内容并拒绝创建源文件。收到的内容应用于通过代码保存文件并按第一个变体进行处理。
于 2013-04-28T12:18:32.413 回答