1 // Copyright 2004-2007 Castle Project - http://www.castleproject.org/
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
7 // http://www.apache.org/licenses/LICENSE-2.0
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
15 namespace TestSiteARSupport
.Controllers
17 using Castle
.Components
.Binder
;
18 using Castle
.MonoRail
.ActiveRecordSupport
;
19 using Castle
.MonoRail
.Framework
;
21 using TestSiteARSupport
.Model
;
24 public class CategoryController
: ARSmartDispatcherController
30 [AccessibleThrough(Verb
.Post
)]
31 public void Insert([ARDataBind("category", AutoLoad
= AutoLoadBehavior
.OnlyNested
)] Category category
)
33 ErrorList errorList
= (ErrorList
) BoundInstanceErrors
[category
];
35 PropertyBag
.Add("errorlist", errorList
);
37 if (errorList
.Count
== 0)
41 PropertyBag
.Add("category", category
);
45 public void Edit([ARFetch("id", false, true)] Category category
)
47 PropertyBag
.Add("category", category
);
50 [AccessibleThrough(Verb
.Post
)]
51 public void Update([ARDataBind("category", AutoLoad
=AutoLoadBehavior
.Always
)] Category category
)
53 ErrorList errorList
= (ErrorList
) BoundInstanceErrors
[category
];
55 PropertyBag
.Add("errorlist", errorList
);
57 if (errorList
.Count
== 0)
61 PropertyBag
.Add("category", category
);
65 public void RemoveConfirm([ARFetch("id", false, true)] Category category
)
67 PropertyBag
.Add("category", category
);
70 [AccessibleThrough(Verb
.Post
)]
71 public void Delete([ARDataBind("category", AutoLoad
=AutoLoadBehavior
.Always
)] Category category
)