Причина: отсутствует имя сервера.На локальном компьютере адрес выглядит как http://localhost/<servername>
- например, мой - http://localhost/dnn6.
Причина, по которой он не работает на локальном компьютере, заключается в том, что браузер ищет изображения на http://localhost/Images/image01.png or http://localhost/DesktopModules/MyCustomModule/Images/image01.png.
Я предпочитаю вставлять свои CSS и другие скрипты в код позади.Таким образом, имя сервера включается, и оно работает как на рабочем сервере, так и на сервере разработки.
LiteralControl litScripts = new LiteralControl();
litScripts.Text +="<link href=\"" + this.TemplateSourceDirectory +
"/CSS/Form.css\" rel=\"stylesheet\" type=\"text/css\" />";
Page.Header.Controls.Add(litScripts);
На моем рабочем сервере URL выглядит как
<link href="/DesktopModules/MyCustomModule/CSS/Form.css"
rel="stylesheet" type="text/css" />
и на сервере разработки,он вставляется как
<link href="/DNN6/DesktopModules/MyCustomModule/CSS/Form.css" rel="stylesheet" type="text/css" />
Теперь отредактируйте файл Form.css, чтобы он выглядел следующим образом:
background: url(../Images/image01.png)