簡體   English   中英

如何檢查對象是否為空

[英]How to check if an object is null

這是我的代碼:

public static class SerializationUtil
{
    public static string Serialize(object obj)
    {
        if (obj == null)
            return string.Empty;

        StringWriter writer = new StringWriter();
        new System.Web.UI.LosFormatter().Serialize(writer, obj);
        return writer.ToString();
    }

    public static object Deserialize(string data)
    {
        if (data == null)
            return null;
        return (new System.Web.UI.LosFormatter()).Deserialize(data);
    }
}

我遇到的問題是:當obj為null時,我調用serialize方法時會引發錯誤。 所以我想檢查obj值是否為null。 我放置的代碼現在無法正常工作,因為在檢查obj值時,它永遠不會為空。

解決:

在答案中查看我的帖子

好,我知道了。 我查看了異常的詳細信息,它期望對象類可序列化。 我使類可序列化,並且可以正常工作

using System;

[Serializable]  //the missing piece
public class RegisterFormData
{
    public string username { get; set; }
    public string pass1 { get; set; }
    public string pass2 { get; set; }
    public string email { get; set; }
    public string firstname { get; set; }
    public string lastname { get; set; }
}

我真的不認為您所描述的是可能的。 如果僅在上面幾行中檢查obj是否不為null,則它也不為null。 如果您收到NullReferenceException ,則可能是由於Serialize方法本身中的其他內容為null。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM