MasterpageFile nella pagina ASPX dell'app autohosted
-
10-12-2019 - |
Domanda
Sto cercando di creare SharePoint 2013 AutoHosted App
.In questo ho una pagina Default.aspx
.Voglio che questa pagina sia un bambino master.O qualcosa di simile.
Creo un SharePoint Hosted App
e copia il contenuto che è stato scritto sulla pagina.e poi aggiunto alla mia pagina Default.aspx
che erano necessari.
Ho aggiunto la linea soffiede alla mia pagina.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AccordionDisplayAppWeb.Pages.Default" MasterPageFile="~masterurl/default.master" %>
.
Voglio dire, aggiungo un attributo MasterPageFile
in questo.
Ma mi sta dando errore come segue.
Server Error in '/' Application.
Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.
Parser Error Message: The file '/Pages/~masterurl/default.master' does not exist.
Source Error:
Line 1: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AccordionDisplayAppWeb.Pages.Default" MasterPageFile="~masterurl/default.master" %>
Line 2:
Line 3: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Source File: /Pages/Default.aspx Line: 1
Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.17929
.
Ma non funziona.
Qualcuno può aiutarmi a risolvere questo.
Soluzione
Quando si crea un'app Autohosted, il Web remoto è un normale sito Web ASP.NET, non un sito di SharePoint.
Ciò significa che le "estensioni" di SharePoint per masterpagefile come il token speciale "~ masterurl / default.master" non funziona.
È possibile utilizzare / dovrebbe ancora utilizzare una pagina master sul Web remoto se hai più di una pagina, ma non avrà alcuna connessione a quella utilizzata nel sito SharePoint.È necessario aggiungere il tuo mymasterpage.master al progetto e quindi utilizzare questo nell'attributo masterpagefile come:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="AccordionDisplayAppWeb.Pages.Default" MasterPageFile="MyMasterPage.master" %>
.
Mentre la tua app Autohosted potrebbe non utilizzare la masterpage di dal sito di SharePoint può utilizzare lo styling tramite il client Chrome Control See: Come: utilizzare il client Chrome Control in app per SharePoint