If a Factory method returns an IDisposable instead if a class that implements IDisposable, the code is not marked.
This code works:
using System.IO;
namespace DisFixerTest {
public class ClassThatUsesFactoyInCtor {
public ClassThatUsesFactoyInCtor() {
var factory = new Factory();
var mem = factory.Create();
}
}
class Factory {
public MemoryStream Create() {
return new MemoryStream();
}
}
}
But this does not work:
using System.IO;
namespace DisFixerTest {
public class ClassThatUsesFactoyInCtor {
public ClassThatUsesFactoyInCtor() {
var factory = new Factory();
var mem = factory.Create();
}
}
class Factory {
public IDisposable Create() {
return new MemoryStream();
}
}
}
If a Factory method returns an IDisposable instead if a class that implements IDisposable, the code is not marked.
This code works:
But this does not work: