FileMultipartSection.FileStream and MultipartSection.Body Nullability Differences
#39,966 opened on 2022年2月3日
Repository metrics
- Stars
- (37,933 stars)
- PR merge metrics
- (平均マージ 16d 9h) (30d で 258 merged PRs)
説明
Background and Motivation
Not sure if this is really an API proposal, but it was the only issue template that made sense to me.
I noticed FileMultipartSection.FileStream is marked as a Nullable Stream, but MultipartSection.Body Stream is not Nullable. It looks like FileMultipartSection.FileStream is only set from the MultipartSection.Body so I would assume that both would have the same Nullable reference type. My only thought is that MultipartSection.Body has a public setter so it "could" be set to null, but if so then FileMultipartSection.FileStream should be null too. I could be overlooking something.
Proposed API
Both to have the same Nullability if that assumption is correct
Usage Examples
Either changing the MultipartSection Body property to
public Stream? Body { get; set; } = default;
or changing the FileMultipartSection.FileStream to
public Stream FileStream => Section.Body;
Alternative Designs
Leave it as is. I could be looking at this wrong so I apolgize.
Risks
Could add warnings / errors to existing code that uses the Nullable feature if the change was to Stream and not Stream?