1
メディアライブラリに画像をダウンロードして保存するには、次のコードを使用しています。アイテムがメディアライブラリに作成されていますが、メディアはありません。Sitecore:urlからメディアライブラリに画像を保存する
using (WebClient webClient = new WebClient())
{
byte[] data = webClient.DownloadData("https://myurl/images?id="+12345);
Stream memoryStream = new MemoryStream(data);
var options = new Sitecore.Resources.Media.MediaCreatorOptions
{
FileBased = false,
OverwriteExisting = true,
Versioned = true,
IncludeExtensionInItemName = true,
Destination = Factory.GetDatabase("master").GetItem(Settings.GetSetting("ProfilePicturesFolderItemId")).Paths.Path + "/" + "12345",
Database = Factory.GetDatabase("master"),
AlternateText = userProfileItem.Name
};
using (new SecurityDisabler())
{
var creator = new Sitecore.Resources.Media.MediaCreator();
creator.CreateFromStream(memoryStream, v1ImageId, options);
}
}
メディアフォルダには、名前が「12345」のアイテムが表示されますが、メディアはありません。あなたはオプションでDestination
を渡すときに私は、覚えているから
私はエクステンションを与えようとしたときにエラーが発生しています。このコード 'creator.CreateFromStream(memoryStream、filename + extension、options);'はエラーを生成します: 'Parameter is not valid。 '。私が拡張を取り除くと、エラーもなくなります。 – Kamran
ファイル名と拡張子は何ですか? –
イメージは.jpgであり、ファイル名は12345です。私はあなたのコードをそのまま使用していません。私は21345としてファイル名を持っているので、私はそれをテストしています。 – Kamran