public uint CreateAssemblyRef(IAssembly assembly) { var rid = TablesHeap.AssemblyRefTable.Create(); var row = new RawAssemblyRefRow((ushort)assembly.Version.Major, (ushort)assembly.Version.Minor, (ushort)assembly.Version.Build, (ushort)assembly.Version.Revision, (uint)assembly.Attributes, BlobHeap.Create(GetPublicKeyOrTokenBytes(assembly.PublicKeyOrToken)), StringsHeap.Create(assembly.Name), StringsHeap.Create(assembly.Culture), BlobHeap.Create((assembly as AssemblyRef)?.Hash)); TablesHeap.AssemblyRefTable.Set(rid, ref row); return(rid); }
public uint CreateAssemblyRef(IAssembly assembly) { var rid = TablesHeap.AssemblyRefTable.Create(); var row = TablesHeap.AssemblyRefTable.Get(rid); row.MajorVersion = (ushort)assembly.Version.Major; row.MinorVersion = (ushort)assembly.Version.Minor; row.BuildNumber = (ushort)assembly.Version.Build; row.RevisionNumber = (ushort)assembly.Version.Revision; row.Flags = (uint)assembly.Attributes; row.PublicKeyOrToken = BlobHeap.Create(GetPublicKeyOrTokenBytes(assembly.PublicKeyOrToken)); row.Name = StringsHeap.Create(assembly.Name); row.Locale = StringsHeap.Create(assembly.Culture); row.HashValue = BlobHeap.Create((assembly as AssemblyRef)?.Hash); return(rid); }