/// <summary> /// /// </summary> /// <param name="DocObj">При записи в БД нового обьекта, DocObj это новый обьект созданный предварительным вызовом CreateDoc(); при добавлении файла к существующей сборке, DocObj - обьект сборки"</param> /// <param name="filePath"></param> private void Blob(ref IDBObject DocObj, MyStruct _object) { if (_object.Flag == 5)// пишем Blob не в новый документ, а в сборку { DocObj = createdDocs.Where(x => x.Key.Equals(_object.RefAsmName)).Select(y => y.Value).First(); } int attrFile = MetaDataHelper.GetAttributeTypeID(new Guid(SystemGUIDs.attributeFile));// атрибут "Файл" IDBAttribute fileAtr = DocObj.GetAttributeByID(attrFile); if (fileAtr.Values.Count() >= 1) { fileAtr.AddValue(_object.Path); } using (var ms = new MemoryStream(File.ReadAllBytes(_object.Path))) { BlobInformation blInfo = new BlobInformation(0, 0, DateTime.Now, _object.Path, ArcMethods.NotPacked, null); BlobProcWriter writer = new BlobProcWriter(fileAtr, (int)AttributableElements.Object, blInfo, ms, null, null); writer.WriteData(); } }