Прежде всего, я искал это, и я нашел следующие ссылки в Stack Overflow:
- Есть ли разница между` new object() `и` new {} `в С#?
- Разница между объектом a = new Dog() vs Dog a = new Dog()
Но я не удовлетворен с этим ответом, он не очень хорошо объяснил (я не понял это хорошо).
В принципе, я хочу знать разницу между new object()
и new {}
. Как они обрабатываются во время компиляции и времени выполнения?
Secondaly, у меня есть следующий код, который я использовал для WebMethods
в моем простом приложении asp.net
[WebMethod]
[ScriptMethod(UseHttpGet = false)]
public static object SaveMenus(MenuManager proParams)
{
object data = new { }; // here im creating an instance of an 'object' and i have typed it `new {}` but not `new object(){}`.
try
{
MenuManager menu = new MenuManager();
menu.Name = proParams.Name;
menu.Icon = proParams.Icon;
bool status = menu.MenuSave(menu);
if (status)
{
// however, here i'm returning an anonymous type
data = new
{
status = true,
message = "Successfully Done!"
};
}
}
catch (Exception ex)
{
data = new { status = false, message = ex.Message.ToString() };
}
return data;
}
Итак, (как вы можете видеть в комментариях в коде), Различия new object(){}
и new {}
?
Является ли это даже правильным способом написать код? Можете ли вы предложить лучший способ для этого кода?
Я знаю, я не могу объяснить это хорошо, и я спрашиваю много, но это лучшее, что у меня есть сейчас.