internal static IResourceWriter CreateResourceWriter(Stream stream, ResourceType type, FileName parentDesignerSourceFileName) { if (type == ResourceType.Resources) { return(new ResourceWriter(stream)); } return(new ResXResourceWriter(stream, t => ResXConverter.ConvertTypeName(t, parentDesignerSourceFileName))); }
public void SaveFile(string filename, Stream stream) { switch (Path.GetExtension(filename).ToLowerInvariant()) { // write XML resource case ".resx": ResXResourceWriter rxw = new ResXResourceWriter(stream, t => ResXConverter.ConvertTypeName(t, filename)); foreach (KeyValuePair <string, ResourceItem> entry in resources) { if (entry.Value != null) { ResourceItem item = entry.Value; rxw.AddResource(item.Name, item.ResourceValue); } } foreach (KeyValuePair <string, ResourceItem> entry in metadata) { if (entry.Value != null) { ResourceItem item = entry.Value; rxw.AddMetadata(item.Name, item.ResourceValue); } } rxw.Generate(); rxw.Close(); break; // write default resource default: ResourceWriter rw = new ResourceWriter(stream); foreach (KeyValuePair <string, ResourceItem> entry in resources) { ResourceItem item = (ResourceItem)entry.Value; rw.AddResource(item.Name, item.ResourceValue); } rw.Generate(); rw.Close(); break; } }
public void SaveFile(FileName filename, Stream stream) { switch (Path.GetExtension(filename).ToLowerInvariant()) { case ".resx": // write XML resource ResXResourceWriter rxw = new ResXResourceWriter(stream, t => ResXConverter.ConvertTypeName(t, filename)); foreach (ResourceItem entry in resourceItems) { if (entry != null) { rxw.AddResource(entry.ToResXDataNode(t => ResXConverter.ConvertTypeName(t, filename))); } } foreach (ResourceItem entry in metadataItems) { if (entry != null) { rxw.AddMetadata(entry.Name, entry.ResourceValue); } } rxw.Generate(); rxw.Close(); break; default: // write default resource ResourceWriter rw = new ResourceWriter(stream); foreach (ResourceItem entry in resourceItems) { rw.AddResource(entry.Name, entry.ResourceValue); } rw.Generate(); rw.Close(); break; } }