Я хочу сохранить URL изображения в базе данных nopcommerce.Кто-нибудь может дать мне идею, как я могу сохранить URL-адрес изображения в базе данных NOPCOMMERCE?Этот метод GetThumbUrl предназначен для получения URL-адреса изображения, а метод InsertPicture - для вставки изображения без пути к изображению в базе данных.
Как вызвать метод GetThumbUrl в методе InsertPicture для сохранения пути к изображению в базе данных?
public string GetThumbUrl(string thumbFileName, string storeLocation = null)
{
storeLocation = !String.IsNullOrEmpty(storeLocation)
? storeLocation
: _webHelper.GetStoreLocation();
var url = storeLocation + "content/images/thumbs/";
if (_mediaSettings.MultipleThumbDirectories)
{
//get the first two letters of the file name
var fileNameWithoutExtension = Path.GetFileNameWithoutExtension(thumbFileName);
if (fileNameWithoutExtension != null && fileNameWithoutExtension.Length > MULTIPLE_THUMB_DIRECTORIES_LENGTH)
{
var subDirectoryName = fileNameWithoutExtension.Substring(0, MULTIPLE_THUMB_DIRECTORIES_LENGTH);
url = url + subDirectoryName + "/";
}
}
url = url + thumbFileName;
return url;
}
public virtual Picture InsertPicture(byte[] pictureBinary, string mimeType, string seoFilename,
string altAttribute = null, string titleAttribute = null,
bool isNew = true, bool validateBinary = true)
{
int targetSize = 0;
PictureType defaultPictureType = PictureType.Entity;
string storeLocation = null;
mimeType = CommonHelper.EnsureNotNull(mimeType);
mimeType = CommonHelper.EnsureMaximumLength(mimeType, 20);
seoFilename = CommonHelper.EnsureMaximumLength(seoFilename, 100);
if (validateBinary)
pictureBinary = ValidatePicture(pictureBinary, mimeType);
var inspicture = new Picture
{
PictureBinary = this.StoreInDb ? pictureBinary : new byte[0],
MimeType = mimeType,
SeoFilename = seoFilename,
AltAttribute = altAttribute,
TitleAttribute = titleAttribute,
IsNew = isNew,
};
_pictureRepository.Insert(inspicture);
if (!this.StoreInDb)
SavePictureInFile(inspicture.Id, pictureBinary, mimeType);
//event notification
_eventPublisher.EntityInserted(inspicture);
return inspicture;
}