Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将图像从服务器上载到sitecore媒体库_Sitecore_Sitecore7.2 - Fatal编程技术网

将图像从服务器上载到sitecore媒体库

将图像从服务器上载到sitecore媒体库,sitecore,sitecore7.2,Sitecore,Sitecore7.2,如何从服务器上的文件夹将图像上载到Sitecore媒体库 var dir = new DirectoryInfo(MapPath("~/images/temp")); FileInfo[] files = dir.GetFiles(); var list = new ArrayList(); foreach (FileInfo file in files) { if (file.Extension == ".jpg" || file.Extension == ".jpe

如何从服务器上的文件夹将图像上载到Sitecore媒体库

var dir = new DirectoryInfo(MapPath("~/images/temp"));
FileInfo[] files = dir.GetFiles();
var list = new ArrayList();

foreach (FileInfo file in files)
    {
        if (file.Extension == ".jpg" || file.Extension == ".jpeg" || file.Extension == ".gif" || file.Extension == ".png")
        {
            list.Add(file);
        }
    }

// Now I want to add the files to media library in sitecore.

要将文件添加到媒体库,请使用以下方法:

  public MediaItem AddFile(string fileName, string sitecorePath, string mediaItemName)
{
  // Create the options
   Sitecore.Resources.Media.MediaCreatorOptions options = new Sitecore.Resources.Media.MediaCreatorOptions();
  // Store the file in the database, not as a file
  options.FileBased = false;
  // Remove file extension from item name
  options.IncludeExtensionInItemName = false;
  // Overwrite any existing file with the same name
  options.KeepExisting = false;
  // Do not make a versioned template
  options.Versioned = false;
  // set the path
 options.Destination = sitecorePath + "/" + mediaItemName; 
 // Set the database
 options.Database = Sitecore.Configuration.Factory.GetDatabase("master");

   // Now create the file
   Sitecore.Resources.Media.MediaCreator creator = new Sitecore.Resources.Media.MediaCreator();
   MediaItem mediaItem = creator.CreateFromFile(filename, options);
   return mediaItem;
 }
您将调用此方法:

  MediaItem myFile = AddFile("c:\\myfile.pdf", "myfile", "/pdffolder/uploaded");
在您的情况下,您将拥有:

 var dir = new DirectoryInfo(MapPath("~/images/temp"));
 FileInfo[] files = dir.GetFiles();
 var list = new ArrayList();

 foreach (FileInfo file in files)
 {
    if (file.Extension == ".jpg" || file.Extension == ".jpeg" || file.Extension == ".gif" || file.Extension == ".png")
    {
        AddFile(file.FullName, file.Name, "/pdffolder/uploaded");
    }
 }
您可以在此处找到详细信息:

您也可以考虑使用SITECORPOWELSK扩展来实现这一点。


谢谢你的回答。这一行的作用是什么`MediaItem MediaItem=creator.CreateFromFile(“c:\\myfile.pdf”,选项)`我更新了我的答案,正在从给定文件创建mediaitem。我正在使用您的代码。但什么都没有发生。我也更新了我的问题。你能帮我检查一下吗?你有没有用debug检查一下是否正在调用我的方法?现在可以了。我弄错了。我马上更新这个问题。