Я знаю, что это старый пост, однако есть лучший способ сделать это. Этот способ намного лучше, потому что он сохраняет ваши файлы js и CSS локальными для вашего проекта. Я обнаружил, что лучше всего избегать улья 12, если это вообще возможно, и с добавлением файлов CSS и js это возможно.
Во-первых, вы должны создать себе папку для размещения ваших js-файлов и CSS-файлов на верхнем уровне вашего C # Project. Поместите файлы js / CSS в эту папку.
Далее вы создадите класс Constants.cs, который будет вызывать ваши файлы js или CSS. вот код для класса.
using System;
using System.Collections.Generic;
using System.Text;
namespace myProjectSolution {
internal static class Constants
{
public const string JQuerymyjavascriptFileJS = "myProjectSolution.Resources.myjavascriptFile.js";
public const string CSSPath = "myProjectSolution.Resources.CSSPath.css";
}
}
Обратите внимание, что в коде он возвращается в папку ресурсов. Это дополнительная папка, которую я сделал на первом этапе. Называй это как хочешь.
Следующая часть - добавление ссылки на ваш js-файл / CSS в сборку.
[assembly: WebResource(Constants.JQuerymyjavascriptFileJS, "text/javascript")]
[assembly: WebResource(Constants.CSSPath, "text/css")]
После того, как это будет сделано, вы готовы позвонить и использовать js / CSS в основном классе C # вашего проекта WSP.
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
this.EnsureChildControls();
Page.ClientScript.RegisterClientScriptResource(this.GetType(), Constants.JQuerymyjavascriptFileJS);
}
CSS-файлы немного отличаются
ClientScriptManager csm = Page.ClientScript();
csm.RegisterClientScriptResourse(this.GetType(), Constants.CSSPath);
HtmlLink css = new HtmlLink();
css.Href = csm.GetWebResourceUrl(this.GetType(), Constants.CSSPath);
css.Attributes.Add("type", "text/css");
css.Attributes.Add("rel", "stylesheet");
Page.Header.Controls.Add(css);
Я обнаружил, что это лучший и самый надежный способ вызова файлов js и CSS. Так я загружаю свои файлы JavaScript и CSS для всех своих веб-частей. У меня никогда не было проблем с этим. Я надеюсь, что это поможет некоторым людям, у которых есть проблемы с этим. SharePoint никогда не делает ничего легкого. :)