Добавьте ограничение класса как первое ограничение к Вашему универсальному типу.
static T FindThing<T>(IList collection, int id) where T : class, IThing, new()
SMTP также не включен в Windows Vista - вам придется загрузить и установите бесплатный сторонний SMTP-сервер. Имеется несколько доступных номеров - http://www.softstack.com/freesmtp.html один.
ОБНОВЛЕНИЕ: Еще несколько вариантов - Экземпляр IIS Vista не имеет SMTP (Решения ?)
Вы можете использовать Google как бесплатный ретранслятор, однако вам потребуется учетная запись Google.
smtp.gmail.com
Просто убедитесь, что порты настроены так, как определено для вашей учетной записи.
Если вы разрабатываете в ASP.net с использованием встроенных почтовых библиотек, менее известным параметром конфигурации является следующий:
<configuration>
. . . more config stuff here . . .
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory" from="noreply@testdomain.org">
<specifiedPickupDirectory pickupDirectoryLocation="c:\smtp\"/>
</smtp>
</mailSettings>
</system.net>
</configuration>
Все электронные письма, создаваемые вашим приложением, будут сбрасываться в этот каталог во время разработки. Не нужен smtp-сервер!