Question

Le code ci-dessous est une tentative d'obtenir des fichiers (téléchargez) d'un SharePoint. Si j'essaie ceci sur ma version locale, cela fonctionne comme un charme.Je peux sélectionner tous les éléments de la bibliothèque de documents.

Il y a plusieurs méthodes que j'ai essayées et je pourrais poster certains d'entre eux ici si vous le souhaitez.Je peux télécharger des fichiers corrompus, mais même lorsque le lien est faux. Si j'essaie ceci sur la Teamsite au bureau 365, je reçois une exception que mon lien est faux.Mais je parle du même site (au lieu de localhost / dev / im faisant référence à http://mysite.com/ Teamsite / Dev / ).Une idée de quelle différence peut être la différence?Microsoft bloque-t-il quelque chose de des connexions externes ne sont-ils pas autorisés?

  private void btnDownload_Click(object sender, EventArgs e)
    {
        if (comboBox1.Items.Count > 0 && comboBox1.SelectedIndex != -1)
        {
            SaveFileDialog dialog = new SaveFileDialog();
            dialog.ShowDialog();

            using (SPSite site = new SPSite("http://localhost/dev/"))
            {
                using (SPWeb web = site.OpenWeb())
                {
                    SPFolder myLibrary = web.Folders["Management"];

                    foreach (SPFile file in myLibrary.Files)
                    {
                        if (file.Name == comboBox1.SelectedItem.ToString())
                        {
                            byte[] bytes = file.OpenBinary();

                            try
                            {
                                FileStream fs = new FileStream(dialog.FileName, FileMode.Create, FileAccess.ReadWrite);
                                BinaryWriter bw = new BinaryWriter(fs);
                                bw.Write(bytes);
                                bw.Close();
                                MessageBox.Show("File downloaded to: " + dialog.FileName);
                            }
                            catch (Exception ex)
                            {
                                MessageBox.Show(ex.Message);
                            }

                        }                            
                    }
                }
            }
        }
        else
        {
            MessageBox.Show("Select file to download");
        }
    }

Ceci est le message d'exception:

The Web application at http://www.gtest.nl/TeamSite/ could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application.

Était-ce utile?

La solution

Vous ne pouvez pas vous connecter au site SharePoint, déployé sur un autre ordinateur comme celui-ci. Vous devriez utiliser Contexte du client

Par exemple:

    string siteUrl = "http://MyServer/sites/MySiteCollection";

    ClientContext clientContext = new ClientContext(siteUrl);
    Web oWebsite = clientContext.Web;
    ListCollection collList = oWebsite.Lists;

    clientContext.Load(collList);

    clientContext.ExecuteQuery();

    foreach (SP.List oList in collList)
    {
        Console.WriteLine("Title: {0} Created: {1}", oList.Title, oList.Created.ToString());
    }

Vous pouvez trouver plus d'exemples sur contexte client ici

Il y a déjà un exemple de fichier téléchargement de SharePoint via ClientContext.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top