Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 5965fb3

Browse files
fix(Identifiable): handle null id values
1 parent b073a0b commit 5965fb3

File tree

2 files changed

+14
-1
lines changed

2 files changed

+14
-1
lines changed

‎src/JsonApiDotNetCore/Models/Identifiable.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@ public string StringId
3737
/// </summary>
3838
protected virtual string GetStringId(object value)
3939
{
40+
if(value == null)
41+
return string.Empty;
42+
4043
var type = typeof(T);
4144
var stringValue = value.ToString();
4245

‎test/UnitTests/Models/IdentifiableTests.cs

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,16 @@ public void Setting_StringId_To_Null_Sets_Id_As_Default()
2121
Assert.Equal(0, resource.Id);
2222
}
2323

24-
private class IntId : Identifiable { }
24+
[Fact]
25+
public void GetStringId_Returns_EmptyString_If_Object_Is_Null()
26+
{
27+
var resource = new IntId();
28+
var stringId = resource.ExposedGetStringId(null);
29+
Assert.Equal(string.Empty, stringId);
30+
}
31+
32+
private class IntId : Identifiable {
33+
public string ExposedGetStringId(object value) => GetStringId(value);
34+
}
2535
}
2636
}

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /