chore(dotnet): don't generate setters on interfaces (#6293)

This commit is contained in:
Darío Kondratiuk 2021-04-30 01:10:59 -03:00 committed by GitHub
parent d9015b99d0
commit bb8453972a
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -288,7 +288,8 @@ function renderMember(member, parent, out) {
let propertyOrigin = member.name;
if (member.type.expression === '[string]|[float]')
propertyOrigin = `${member.name}String`;
output(`[JsonPropertyName("${propertyOrigin}")]`)
if(!member.clazz)
output(`[JsonPropertyName("${propertyOrigin}")]`)
if (parent && member && member.name === 'children') { // this is a special hack for Accessibility
console.warn(`children property found in ${parent.name}, assuming array.`);
type = `IEnumerable<${parent.name}>`;
@ -296,7 +297,10 @@ function renderMember(member, parent, out) {
if(!type.endsWith('?') && !member.required && nullableTypes.includes(type))
type = `${type}?`;
output(`public ${type} ${name} { get; set; }`);
if(member.clazz)
output(`public ${type} ${name} { get; }`);
else
output(`public ${type} ${name} { get; set; }`);
} else {
throw new Error(`Problem rendering a member: ${type} - ${name} (${member.kind})`);
}