Compare commits
No commits in common. "c996ddc53c17d437e7f20bd138f584a09c20180c" and "d585a7c42100dbd8d3b30fb122cdda81c14fca1d" have entirely different histories.
c996ddc53c
...
d585a7c421
|
|
@ -42,8 +42,23 @@ public static class Responses
|
|||
|
||||
public static FileStreamHttpResult RespondXml<T>(this ControllerBase controller, T obj, string fileName = "Data.xml")
|
||||
{
|
||||
var stream = Utils.Xml.Serialize(obj);
|
||||
var stream = new MemoryStream();
|
||||
//use utf8 encoding
|
||||
var serializer = new XmlSerializer(typeof(T));
|
||||
var settings = new XmlWriterSettings
|
||||
{
|
||||
Indent = true,
|
||||
Encoding = Encoding.UTF8,
|
||||
};
|
||||
|
||||
return RespondFileStream(controller, stream, "text/xml", fileName);
|
||||
//Console.Writeline(stream.Length);
|
||||
|
||||
using (var writer = XmlWriter.Create(stream, settings))
|
||||
{
|
||||
serializer.Serialize(writer, obj);
|
||||
//Console.Writeline(stream.Length);
|
||||
|
||||
return RespondFileStream(controller, stream, "text/xml", fileName);
|
||||
}
|
||||
}
|
||||
}
|
||||
30
Utils/Xml.cs
30
Utils/Xml.cs
|
|
@ -1,30 +0,0 @@
|
|||
|
||||
using System.Text;
|
||||
using System.Xml;
|
||||
using System.Xml.Serialization;
|
||||
|
||||
namespace NejCommon.Utils;
|
||||
|
||||
public static class Xml{
|
||||
public static Stream Serialize<T>(T obj){
|
||||
var stream = new MemoryStream();
|
||||
//use utf8 encoding
|
||||
var serializer = new XmlSerializer(typeof(T));
|
||||
var settings = new XmlWriterSettings
|
||||
{
|
||||
Indent = true,
|
||||
Encoding = Encoding.UTF8,
|
||||
};
|
||||
|
||||
//Console.Writeline(stream.Length);
|
||||
|
||||
using (var writer = XmlWriter.Create(stream, settings))
|
||||
{
|
||||
serializer.Serialize(writer, obj);
|
||||
//Console.Writeline(stream.Length);
|
||||
stream.Seek(0, SeekOrigin.Begin);
|
||||
|
||||
return stream;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user