Exportar (0) Imprimir
Expandir Tudo
Este artigo foi traduzido por máquina. Coloque o ponteiro do mouse sobre as frases do artigo para ver o texto original. Mais informações.
Tradução
Original

Propriedade SiteMapNode.Url

Obtém ou define o URL da página que o SiteMapNode de objeto representa.

Namespace:  System.Web
Assembly:  System.Web (em System.Web.dll)

public virtual string Url { get; set; }

Valor de propriedade

Tipo: System.String
A URL da página que o nó representa. O padrão é String.Empty.

ExceçãoCondição
InvalidOperationException

O nó é somente leitura.

O XmlSiteMapProvider classe, que é a implementação de provedor de mapa de site do padrão para ASP.NET, usa a SiteMapNode.Url a propriedade como uma chave de pesquisa. Portanto, qualquer SiteMapNode o objeto que é usado pelo XmlSiteMapProvider classe deve ter uma URL exclusiva dentro do escopo do provedor.

À esquerda e caracteres de espaço em branco são ignorados.

TopicLocation
Como: Programmatically Modificar Nós Site-Map In Memóriadv_aspnetcon
Como: Modificar programaticamente Site Map Nodes in memóriaBuilding ASP .NET Web Applications in Visual Studio
Como: Modificar programaticamente Site Map Nodes in memóriaBuilding ASP .NET Web Applications in Visual Studio

O exemplo de código a seguir demonstra como definir o Url propriedade de um SiteMapNode objeto. O AccessSiteMapProvider armazena o nó raiz como uma linha que não tenha parentnodeid definido. A linha é retornada usando um OleDbDataReader o objeto, e SiteMapNode propriedades são definidas a partir dos valores no leitor de dados.

Este exemplo de código é parte de um exemplo maior fornecido para a classe SiteMapProvider.


// Build an in-memory representation from persistent
// storage, and return the root node of the site map.
public override SiteMapNode BuildSiteMap() {

    // Since the SiteMap class is static, make sure that it is
    // not modified while the site map is built.
    lock(this) {

        // If there is no initialization, this method is being
        // called out of order.
        if (! IsInitialized) {
            throw new Exception("BuildSiteMap called incorrectly.");
        }

        // If there is no root node, then there is no site map.
        if (null == rootNode) {
            // Start with a clean slate
            Clear();

            // Select the root node of the site map from Microsoft Access.
            int rootNodeId = -1;

            if (accessConnection.State == ConnectionState.Closed)
                accessConnection.Open();
            OleDbCommand rootNodeCommand =
                new OleDbCommand("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid IS NULL",
                                 accessConnection);
            OleDbDataReader rootNodeReader = rootNodeCommand.ExecuteReader();

            if(rootNodeReader.HasRows) {
                rootNodeReader.Read();
                rootNodeId = rootNodeReader.GetInt32(0);
                // Create a SiteMapNode that references the current StaticSiteMapProvider.
                rootNode   = new SiteMapNode(this,
                                             rootNodeId.ToString(),
                                             rootNodeReader.GetString(1),
                                             rootNodeReader.GetString(2));

            }
            else return null;

            rootNodeReader.Close();
            // Select the child nodes of the root node.
            OleDbCommand childNodesCommand =
                new OleDbCommand("SELECT nodeid, url, name FROM SiteMap WHERE parentnodeid = ?",
                                 accessConnection);
            OleDbParameter rootParam = new OleDbParameter("parentid", OleDbType.Integer);
            rootParam.Value = rootNodeId;
            childNodesCommand.Parameters.Add(rootParam);

            OleDbDataReader childNodesReader = childNodesCommand.ExecuteReader();

            if (childNodesReader.HasRows) {

                SiteMapNode childNode = null;
                while(childNodesReader.Read()) {
                    childNode =  new SiteMapNode(this,
                                                 childNodesReader.GetInt32(0).ToString(),
                                                 childNodesReader.GetString(1),
                                                 childNodesReader.GetString(2));

                    // Use the SiteMapNode AddNode method to add
                    // the SiteMapNode to the ChildNodes collection.
                    AddNode(childNode, rootNode);
                }
            }

            childNodesReader.Close();
            accessConnection.Close();
        }
        return rootNode;
    }
}


.NET Framework

Com suporte em: 4.5, 4, 3.5, 3.0, 2.0

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Função Server Core sem suporte), Windows Server 2008 R2 (Função Server Core com suporte com o SP1 ou posterior, Itanium sem suporte)

O .NET Framework não oferece suporte a todas as versões de cada plataforma. Para obter uma lista das versões com suporte, consulte Requisitos do sistema do .NET Framework.

Contribuições da comunidade

ADICIONAR
A Microsoft está realizando uma pesquisa online para saber sua opinião sobre o site do MSDN. Se você optar por participar, a pesquisa online lhe será apresentada quando você sair do site do MSDN.

Deseja participar?
Mostrar:
© 2015 Microsoft