I'm trying to develop a custom field using the steps outlined here: http://www.sitefinity.com/documentation/documentationarticles/developers-guide/sitefinity-essentials/controls/types-of-controls/field-controls/building-a-custom-field-control

Unfortunately, I don't know how/where to include the client control js file, and it doesn't seem to say in the documentation. Can anyone explain how I might do this? I'm very new to Sitefinity dev (as in this is the first thing I've done) and web dev in general, so feel free to suggest things that "should be obvious"

I also asked this question on the Sitefinity forums - I'll be sure to copy the answer here if I get one there.

有帮助吗?

解决方案

Ok, got it. First you need to set the processing options for the js file to Embedded Resource Then add it to the AssemblyInfo.cs:

[assembly: WebResource("namespace.filename.js", "text/javascript")]

Then override the GetScriptReferences method in the class that inherits from FieldControl:

public override IEnumerable<ScriptReference> GetScriptReferences()
{
    var baseReferences = new List<ScriptReference>(base.GetScriptReferences());
    var newRef = new ScriptReference(javascriptPath, this.GetType().Assembly.FullName);
    baseReferences.Add(newRef);
    return baseReferences;
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top