What is the meaning of new { } (without [])?
I'm doing a kinda-like research project on NUnit for class, and our teacher wrote this test:
[Test]
public void ObjectLiteralIsAnObject ()
{
Assert.AreEqual (true, new { } is Object);
}
I know the meaning of new{}, it creates an array of the best assignable type given the values you insert between {}. But what does new { } do? Is it just the same, or is there a small difference?
Thank you so much in advance, and sorry if it's a silly question!
c# testing nunit
add a comment |
I'm doing a kinda-like research project on NUnit for class, and our teacher wrote this test:
[Test]
public void ObjectLiteralIsAnObject ()
{
Assert.AreEqual (true, new { } is Object);
}
I know the meaning of new{}, it creates an array of the best assignable type given the values you insert between {}. But what does new { } do? Is it just the same, or is there a small difference?
Thank you so much in advance, and sorry if it's a silly question!
c# testing nunit
1
This creates a new anonymous type
– Panagiotis Kanavos
Nov 22 at 18:07
2
The best way to answer these kinds of questions is to runvar x = new { };
in the debugger and look at whatx
contains.
– Dour High Arch
Nov 22 at 18:10
add a comment |
I'm doing a kinda-like research project on NUnit for class, and our teacher wrote this test:
[Test]
public void ObjectLiteralIsAnObject ()
{
Assert.AreEqual (true, new { } is Object);
}
I know the meaning of new{}, it creates an array of the best assignable type given the values you insert between {}. But what does new { } do? Is it just the same, or is there a small difference?
Thank you so much in advance, and sorry if it's a silly question!
c# testing nunit
I'm doing a kinda-like research project on NUnit for class, and our teacher wrote this test:
[Test]
public void ObjectLiteralIsAnObject ()
{
Assert.AreEqual (true, new { } is Object);
}
I know the meaning of new{}, it creates an array of the best assignable type given the values you insert between {}. But what does new { } do? Is it just the same, or is there a small difference?
Thank you so much in advance, and sorry if it's a silly question!
c# testing nunit
c# testing nunit
asked Nov 22 at 18:04
Biel Serrano
32
32
1
This creates a new anonymous type
– Panagiotis Kanavos
Nov 22 at 18:07
2
The best way to answer these kinds of questions is to runvar x = new { };
in the debugger and look at whatx
contains.
– Dour High Arch
Nov 22 at 18:10
add a comment |
1
This creates a new anonymous type
– Panagiotis Kanavos
Nov 22 at 18:07
2
The best way to answer these kinds of questions is to runvar x = new { };
in the debugger and look at whatx
contains.
– Dour High Arch
Nov 22 at 18:10
1
1
This creates a new anonymous type
– Panagiotis Kanavos
Nov 22 at 18:07
This creates a new anonymous type
– Panagiotis Kanavos
Nov 22 at 18:07
2
2
The best way to answer these kinds of questions is to run
var x = new { };
in the debugger and look at what x
contains.– Dour High Arch
Nov 22 at 18:10
The best way to answer these kinds of questions is to run
var x = new { };
in the debugger and look at what x
contains.– Dour High Arch
Nov 22 at 18:10
add a comment |
1 Answer
1
active
oldest
votes
new { }
is used to create anonymous object, in another words an unnamed object.
It is often used in LINQ queries, for example:
var query =
from c in db.Customers
select new
{
c.CustomerId,
c.CustomerName
};
This creates IQueryable
of anonymous type with two properties: CustomerId
and CustomerName
2
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53436232%2fwhat-is-the-meaning-of-new-without%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
new { }
is used to create anonymous object, in another words an unnamed object.
It is often used in LINQ queries, for example:
var query =
from c in db.Customers
select new
{
c.CustomerId,
c.CustomerName
};
This creates IQueryable
of anonymous type with two properties: CustomerId
and CustomerName
2
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
add a comment |
new { }
is used to create anonymous object, in another words an unnamed object.
It is often used in LINQ queries, for example:
var query =
from c in db.Customers
select new
{
c.CustomerId,
c.CustomerName
};
This creates IQueryable
of anonymous type with two properties: CustomerId
and CustomerName
2
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
add a comment |
new { }
is used to create anonymous object, in another words an unnamed object.
It is often used in LINQ queries, for example:
var query =
from c in db.Customers
select new
{
c.CustomerId,
c.CustomerName
};
This creates IQueryable
of anonymous type with two properties: CustomerId
and CustomerName
new { }
is used to create anonymous object, in another words an unnamed object.
It is often used in LINQ queries, for example:
var query =
from c in db.Customers
select new
{
c.CustomerId,
c.CustomerName
};
This creates IQueryable
of anonymous type with two properties: CustomerId
and CustomerName
edited Nov 22 at 18:34
answered Nov 22 at 18:09
Dmitry S
836617
836617
2
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
add a comment |
2
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
2
2
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
It does very much have a 'concrete' type. Just not a named one.
– Henk Holterman
Nov 22 at 18:27
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53436232%2fwhat-is-the-meaning-of-new-without%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
This creates a new anonymous type
– Panagiotis Kanavos
Nov 22 at 18:07
2
The best way to answer these kinds of questions is to run
var x = new { };
in the debugger and look at whatx
contains.– Dour High Arch
Nov 22 at 18:10