Click here to Skip to main content
15,885,767 members
Home / Discussions / C#
   

C#

 
AnswerRe: Insert into sql fails. Pin
ScottM127-Feb-14 20:31
ScottM127-Feb-14 20:31 
AnswerRe: Insert into sql fails. Pin
V.27-Feb-14 20:53
professionalV.27-Feb-14 20:53 
AnswerRe: Insert into sql fails. Pin
Mycroft Holmes28-Feb-14 13:15
professionalMycroft Holmes28-Feb-14 13:15 
GeneralRe: Insert into sql fails. Pin
Member 106409593-Mar-14 19:22
Member 106409593-Mar-14 19:22 
QuestionImage from Database to Button.Image C# Pin
Member 1022824227-Feb-14 4:30
Member 1022824227-Feb-14 4:30 
AnswerRe: Image from Database to Button.Image C# Pin
Richard Andrew x6427-Feb-14 11:57
professionalRichard Andrew x6427-Feb-14 11:57 
AnswerRe: Image from Database to Button.Image C# Pin
Ahmed Bensaid28-Feb-14 6:01
professionalAhmed Bensaid28-Feb-14 6:01 
QuestionDataContractSerializer objects conversion performace improvement Pin
impeham27-Feb-14 2:34
impeham27-Feb-14 2:34 
I am using the following code to convert from one type of object to another. It works fine, but I am looking for a way to improve performance:

public static object ConvertObject(object source, Type targetType)
{
    object result;
    Type sourceType = source.GetType();

    DataContractSerializer sourceSerializer = new DataContractSerializer(sourceType);

    using (MemoryStream ms = new MemoryStream())
    {
        DateTime start = DateTime.Now;
        sourceSerializer.WriteObject(ms, source);
        TimeSpan writeObjectTime = DateTime.Now - start;

        ms.Seek(0, SeekOrigin.Begin);

        DataContractSerializer targetSerializer = new DataContractSerializer(targetType);
        XmlReader r = XmlReader.Create(ms);

        DynamicObjectSerializer.MyReader myreader = new DynamicObjectSerializer.MyReader(r);

        start = DateTime.Now;
        result = targetSerializer.ReadObject(myreader);
        TimeSpan readObjectTime = DateTime.Now - start;

        LoggerHolder.LogDebug("\"{0}\" Write Time = {1}, Read Time = {2}", source.GetType().Name, writeObjectTime, readObjectTime);
    }
    return result;
}



Using the MemoryStream actually slows the process down since the object is first being written to it and then read from it. If it was possible to serialize the source object to the target one directly it would have been taken half the time. Any idea how this can be done?

Thanks.
AnswerRe: DataContractSerializer objects conversion performace improvement Pin
BillWoodruff27-Feb-14 8:00
professionalBillWoodruff27-Feb-14 8:00 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham27-Feb-14 11:49
impeham27-Feb-14 11:49 
GeneralReason for my downvote Pin
Wayne Gaylard27-Feb-14 18:54
professionalWayne Gaylard27-Feb-14 18:54 
GeneralRe: Reason for my downvote Pin
impeham28-Feb-14 7:16
impeham28-Feb-14 7:16 
AnswerRe: DataContractSerializer objects conversion performace improvement Pin
Ravi Bhavnani28-Feb-14 8:14
professionalRavi Bhavnani28-Feb-14 8:14 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham28-Feb-14 10:07
impeham28-Feb-14 10:07 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
Ravi Bhavnani28-Feb-14 10:13
professionalRavi Bhavnani28-Feb-14 10:13 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham28-Feb-14 10:16
impeham28-Feb-14 10:16 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham2-Mar-14 5:07
impeham2-Mar-14 5:07 
AnswerRe: DataContractSerializer objects conversion performace improvement Pin
Ravi Bhavnani2-Mar-14 5:15
professionalRavi Bhavnani2-Mar-14 5:15 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham3-Mar-14 0:51
impeham3-Mar-14 0:51 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
Ravi Bhavnani3-Mar-14 2:10
professionalRavi Bhavnani3-Mar-14 2:10 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham3-Mar-14 2:42
impeham3-Mar-14 2:42 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
Ravi Bhavnani3-Mar-14 2:46
professionalRavi Bhavnani3-Mar-14 2:46 
GeneralRe: DataContractSerializer objects conversion performace improvement Pin
impeham5-Mar-14 1:49
impeham5-Mar-14 1:49 
Questionhow to call web api passing multiple parameters in c# Pin
rincy sivan27-Feb-14 0:37
rincy sivan27-Feb-14 0:37 
QuestionRe: how to call web api passing multiple parameters in c# Pin
Richard MacCutchan27-Feb-14 1:31
mveRichard MacCutchan27-Feb-14 1:31 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.