Giter Site home page Giter Site logo

Comments (11)

erichexter avatar erichexter commented on June 20, 2024

can you provide a pull request or a failing unit test?

Eric Hexter

blog | http://Hex.LosTechies.com
info | http://www.linkedin.com/in/erichexter

On Tue, Dec 11, 2012 at 4:32 AM, srnux [email protected] wrote:

Model pseudo-code:
[Key]
public long AnythingDifferentFromId { get; set; }

Breaks at line 49, ViewHelperExtensions.cs :
return
model.GetType().GetProperty(model.IdentifierPropertyName()).GetValue(model,new
object[0]);
with exception:
Object reference not set to an instance of an object.

Cause, line ~60:
if (type.GetProperties().Any(info => info.PropertyType.AttributeExists()))
does not find the Key

Possible solution, replace the if inside IdentifierPropertyName with:
if (type.GetProperties().Any(info =>
info.GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.KeyAttribute),
true)!=null))
{
return
type.GetProperties().First(info =>
info.GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.KeyAttribute),
true)!=null).Name;
}


Reply to this email directly or view it on GitHubhttps://github.com//issues/32.

from twitter.bootstrap.mvc.

srnux avatar srnux commented on June 20, 2024

I will try to provide the unit test as soon I get to my development machine.

Thanks,
Luka

2012/12/22 Eric Hexter [email protected]

can you provide a pull request or a failing unit test?

Eric Hexter

blog | http://Hex.LosTechies.com
info | http://www.linkedin.com/in/erichexter

On Tue, Dec 11, 2012 at 4:32 AM, srnux [email protected] wrote:

Model pseudo-code:
[Key]
public long AnythingDifferentFromId { get; set; }

Breaks at line 49, ViewHelperExtensions.cs :
return

model.GetType().GetProperty(model.IdentifierPropertyName()).GetValue(model,new

object[0]);
with exception:
Object reference not set to an instance of an object.

Cause, line ~60:
if (type.GetProperties().Any(info =>
info.PropertyType.AttributeExists()))
does not find the Key

Possible solution, replace the if inside IdentifierPropertyName with:
if (type.GetProperties().Any(info =>

info.GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.KeyAttribute),

true)!=null))
{
return
type.GetProperties().First(info =>

info.GetCustomAttributes(typeof(System.ComponentModel.DataAnnotations.KeyAttribute),

true)!=null).Name;
}


Reply to this email directly or view it on GitHub<
https://github.com/erichexter/twitter.bootstrap.mvc/issues/32>.


Reply to this email directly or view it on GitHubhttps://github.com//issues/32#issuecomment-11640702.

from twitter.bootstrap.mvc.

srnux avatar srnux commented on June 20, 2024

Please find the unit tests inside a test project here:

https://github.com/srnux/MVCTwitterBootstrap

Luka

from twitter.bootstrap.mvc.

erichexter avatar erichexter commented on June 20, 2024

awesome.. i will add a project and unit tests in the for this extension
code and add the appropriate code to support the key attribute

Eric Hexter

blog | http://Hex.LosTechies.com
info | http://www.linkedin.com/in/erichexter

On Mon, Dec 24, 2012 at 5:15 AM, srnux [email protected] wrote:

Please find the unit tests inside a test project here:

https://github.com/srnux/MVCTwitterBootstrap

Luka


Reply to this email directly or view it on GitHubhttps://github.com//issues/32#issuecomment-11658895.

from twitter.bootstrap.mvc.

xkobram avatar xkobram commented on June 20, 2024

I have another resolution (more like a quickfix) for this bug: change ... info.PropertyType.AttributeExists ... to info.AttributeExists ... on lines 66 and 70.

The problem is that info.PropertyType points to the type of the property (ie String) so it can't have the KeyAttribute. but info.AttributeExists asks about the attributes of the actual property.

from twitter.bootstrap.mvc.

starcub avatar starcub commented on June 20, 2024

@xkobram 's post should fix the issue.

from twitter.bootstrap.mvc.

gomifromparis avatar gomifromparis commented on June 20, 2024

Just to confirm I had the problem with a key attribute on a string, xkobram's solution fixed it.

from twitter.bootstrap.mvc.

eljeanc avatar eljeanc commented on June 20, 2024

Im having the same problem described but in muy situtation we are using fluent api so we do not add the key data annotation in the class or the ID to the key in the object. What can i do ?

I would appreciate any help.

from twitter.bootstrap.mvc.

erichexter avatar erichexter commented on June 20, 2024

You can change that method to find your id field by your convention.

On Saturday, July 20, 2013, eljeanc wrote:

Im having the same problem described but in muy situtation we are using
fluent api so we do not add the key data annotation in the class or the ID
to the key in the object. What can i do ?

I would appreciate any help.


Reply to this email directly or view it on GitHubhttps://github.com//issues/32#issuecomment-21297540
.

Eric Hexter

blog | http://Hex.LosTechies.com
info | http://www.linkedin.com/in/erichexter

from twitter.bootstrap.mvc.

eljeanc avatar eljeanc commented on June 20, 2024

any idea on how to achieve this i have been thinking how to make it work without using the data annotations, this because our project will not use it directly in de dtos.

from twitter.bootstrap.mvc.

erichexter avatar erichexter commented on June 20, 2024

If you name your properties Id or key or some other predictable way you
can do it that way, the views support the name id now. That is how I use it

On Saturday, July 20, 2013, eljeanc wrote:

any idea on how to achieve this i have been thinking how to make it work
without using the data annotations, this because our project will not use
it directly in de dtos.


Reply to this email directly or view it on GitHubhttps://github.com//issues/32#issuecomment-21297958
.

Eric Hexter

blog | http://Hex.LosTechies.com
info | http://www.linkedin.com/in/erichexter

from twitter.bootstrap.mvc.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.