F # -> Доступ к х. из пусть - PullRequest
       1

F # -> Доступ к х. из пусть

1 голос
/ 10 апреля 2011

Как видно из названия, я хочу получить доступ к x.из let вместо члена.

Работает следующее:

type UploadController() =
    inherit Controller()

    member x.UploadPath 
        with get() = x.Server.MapPath "~/Uploads" 

Но это:

type UploadController() =
    inherit Controller()

    let uploadPath = x.Server.MapPath "~/Uploads" 

Выдает ошибку компилятора:

Пространство имен или модуль 'x' не определены

Миссия невыполнима?

Ответы [ 2 ]

7 голосов
/ 10 апреля 2011

Вы можете определить ссылку следующим образом:

type UploadController () as x =
    inherit Controller ()

    let uploadPath = x.Server.MapPath "~/Uploads" 
4 голосов
/ 10 апреля 2011

ChaosPandion дал общий ответ, но, вероятно, вам не нужен самоидентификатор в вашем конкретном случае.Предполагая, что Server определен в Controller или одном из его базовых классов, вы можете использовать base. вместо самоидентификатора.Это описано в F # документах :

Ключевое слово base доступно в производных классах и относится к экземпляру базового класса.Используется как самоидентификатор.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...