如何暂时禁用 SharePoint Web 部件?
可以通过设置属性来完成吗?
我更喜欢这种方法,然后在重新添加之前删除所有安全性。 (因为这可能会产生其他后果。)
我能想到的另一种选择是用临时的 dll 替换特定的 webpart dll,然后重新启动 .net 进程,但这根本不是我喜欢的方法。
还有哪些其他选择? 我错过了一些明显的事情吗?
例如,我想做的是找到一种方法来禁用 Web 部件,同时更新它正在使用的底层数据库架构。 因此,理想情况下,我们希望为所有用户禁用特定的 Web 部件,无论是在我的网站还是社区网站上,进行所需的更改,然后重新启用它。 从而减少用户的停机时间。
无论解决方案是什么,我们都需要能够跨多个前端服务器(可能在两个服务器场上)轻松地完成它。
感谢您的帮助。
Can this be done by setting a property?
I'd prefer that approach then to remove all security before re-adding it.
(As this may have other consequences.)
Another option I can think of is to replace the particular webpart dll with a temporary one, and restart the .net process, but that's not an approach I like at all.
What other options are there? AM I missing something obvious?
What i'm trying to do is find a way to disable a webpart while we update the underlying database schema it's using, for example.
So we'd ideally like to disable a specific webpart for all users, whether it's on a mysite, or a community site, make the required changes and then re-enable it.
Thus decreasing the downtime for users.
Whatever the solution is, we need to be able to do it across multiple front end servers, on potentially two farms easily.
Thanks for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
编写代码在站点的属性包中设置值,通过代码设置该值,并在 Web 部件的页面 lode 中检查属性包的值,如果设置则显示内容,否则跳过。
希望您理解,如果不让我知道,我会说清楚。
write code to set a value in property bag of the site, set the value through the code and in page lode of the web part check for the value of the property bag if set show the content else just skip.
hope you understood if not let me know i will make it clear.
在 web.config 中,您可以为 Web 部件的 SafeControl 标记设置 safe="false"。 这将导致 Web 部件呈现错误消息,直到您将其设置回 true。
http://technet.microsoft.com/en-us/library/cc287909。 ASPX
In the web.config, you can set safe="false" for the SafeControl tag for the webpart. This will cause the web part to render an error message until you set it back to true.
http://technet.microsoft.com/en-us/library/cc287909.aspx
转到网站操作 -> 编辑页面
您可以编辑所有 Web 部件。 单击要禁用的 Web 部件的“编辑”下拉列表,然后选择“关闭”。
Web 部分会消失,但不用担心! 它并没有永远消失!
要取回它:
-> 单击添加新的 Web 部件 -> 高级 Web 部件库和选项。
您的第一个选项是在“封闭的 Web 部件”中进行选择。 单击该链接时,您将显示已关闭的所有 Web 部件的列表。 只需添加您想要的那个即可!
Go to Site Actions -> Edit Page
You get all the web parts edited. Click on the "Edit" dropdown of the Web Part you want to disable and choose "Close".
The web part disappears, but don't fear! It's not gone for good!
To have it back:
-> click to Add a new Web Part -> Advanced Web Part Gallery and Options.
The very first option you have is to choose among "Closed Web Parts". When clicking on that link, you will have displayed a list of all the web parts you had closed. Just add the one you want back!