Установите в поле «Владелец» значение «Собака, а не собака»
type Owner struct {
dog *Dog
}
func newOwner(dog *Dog) Owner {
var owner Owner
owner.dog = dog
return owner
}
при вызове из основного использования & собака
var dog Dog
dog.name = "dog"
owner := newOwner(&dog)
Я использовал recaptcha для нескольких сайтов с большим успехом. Я действительно рекомендую это.
Существует управление recaptcha для asp.net здесь.
Я также использовал эту капчу с успехом.
Перед оценкой любых решений для капчи, необходимо разработать ясный профиль пользователей. Само собой разумеется, любое решение для капчи собирается сделать Ваш сайт тяжелее для использования. Если Ваши пользователи старше с трудностями с видением, дешифрующими капчу, может быть чрезвычайно трудным если не невозможный. Случайные символы по сравнению с реальными словами, может повлиять на Ваших пользователей. Родной язык может влиять на восприятие пользователя того, что символ представляет (специальные символы).
Никакие рекомендации здесь, но знание Ваших пользователей и что они будут терпеть и или способны к, не должны оказывать значительное влияние на Ваше решение.