Установить HTML-содержимое страницы SharePoint - PullRequest
0 голосов
/ 27 января 2012

У меня есть сайт группы, и я пытаюсь изменить страницу в нем программно.Этот код добавляет веб-часть на страницу:

using (SPSite site = new SPSite("http://myserver"))
{
    using (var web = site.OpenWeb("/test16"))
    {

        foreach(var l in web.Lists)
        {
            Console.WriteLine("list : " + l);
        }

        SPList list = web.Lists["Shared Documents"];
        // Instantiate the web part
        ListViewWebPart wp = new ListViewWebPart();
        wp.ZoneID = "Left";
        wp.ListName = list.ID.ToString("B").ToUpper();
        wp.ViewGuid = list.DefaultView.ID.ToString("B").ToUpper();

        SPFile file = web.GetFile("/test16/SitePages/Home.aspx");
        SPLimitedWebPartManager lwpm = file.GetLimitedWebPartManager(PersonalizationScope.Shared);
        SPLimitedWebPartCollection webParts = lwpm.WebParts;
        lwpm.AddWebPart(wp, "Left", 0);
    }
}

Console.WriteLine("Press any key to continue...");
Console.ReadLine();

Как изменить HTML-содержимое страницы?

Ответы [ 3 ]

0 голосов
/ 28 января 2012

Попробуйте SPFile.CheckOut и SPFile.CheckIn :

SPFile file = web.GetFile("/test16/SitePages/Home.aspx");
file.CheckOut();
using (SPLimitedWebPartManager lwpm = file.GetLimitedWebPartManager(PersonalizationScope.Shared))
{
    try
    {
        SPLimitedWebPartCollection webParts = lwpm.WebParts;
        lwpm.AddWebPart(wp, "Left", 0);
    }
    finally
    {
        lwpm.Web.Dispose();
    }
}       
file.CheckIn("checkin");        
0 голосов
/ 31 июля 2014

Если вам нужно изменить чистый HTML-контент, лучше использовать cutom IHttpHandler (в dll) и подключить его к SharePoint через web.config. Is также позволяет изменять динамическое содержимое, например, ответы AJAX.

0 голосов
/ 27 января 2012

Вы можете добавить LiteralControl к своей веб-части и заполнить его HTML следующим образом:

this.Controls.Add(new LiteralControl("<br /"));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...