Issues with TokenClient in IdentityModel
up vote
1
down vote
favorite
I have a new MVC project using TokenClient from IdentityModel
var tokenClient = new TokenClient(tokenUrl, clientId, CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
I have the nuget package in for IdentityModel and everything compiles fine. However, at runtime I get the following error.
Method not found: 'Void
IdentityModel.Client.TokenClient..ctor(System.String, System.String,
System.String, System.Net.Http.HttpMessageHandler,
IdentityModel.Client.AuthenticationStyle)'.
The .NET version of the MVC project is 4.6.1
What can be causing this issue? I have been searching google and cannot find anything that helps. It must be something simple that i am missing.
EDIT:
initializing it by declaring the parameters explicitly does not work either.
var tokenClient = new TokenClient(tokenUrl, clientId: clientId, clientSecret: CLIENT_SECRET);// CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
However initializing it with the one parameter works fine.
var tokenClient = new TokenClient(tokenUrl);
c# asp.net-identity
add a comment |
up vote
1
down vote
favorite
I have a new MVC project using TokenClient from IdentityModel
var tokenClient = new TokenClient(tokenUrl, clientId, CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
I have the nuget package in for IdentityModel and everything compiles fine. However, at runtime I get the following error.
Method not found: 'Void
IdentityModel.Client.TokenClient..ctor(System.String, System.String,
System.String, System.Net.Http.HttpMessageHandler,
IdentityModel.Client.AuthenticationStyle)'.
The .NET version of the MVC project is 4.6.1
What can be causing this issue? I have been searching google and cannot find anything that helps. It must be something simple that i am missing.
EDIT:
initializing it by declaring the parameters explicitly does not work either.
var tokenClient = new TokenClient(tokenUrl, clientId: clientId, clientSecret: CLIENT_SECRET);// CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
However initializing it with the one parameter works fine.
var tokenClient = new TokenClient(tokenUrl);
c# asp.net-identity
Check out this other SO Q/A....can you confirm/deny any of these possible solutions? stackoverflow.com/questions/7578583/method-not-found-on-runtime
– user1011627
Nov 20 at 15:45
it is a brand new project that has a nuget reference to IdentityModel version 3.10.1. The project is just the standard mvc template project that you get when you create the project
– markblue777
Nov 20 at 15:55
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
I have a new MVC project using TokenClient from IdentityModel
var tokenClient = new TokenClient(tokenUrl, clientId, CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
I have the nuget package in for IdentityModel and everything compiles fine. However, at runtime I get the following error.
Method not found: 'Void
IdentityModel.Client.TokenClient..ctor(System.String, System.String,
System.String, System.Net.Http.HttpMessageHandler,
IdentityModel.Client.AuthenticationStyle)'.
The .NET version of the MVC project is 4.6.1
What can be causing this issue? I have been searching google and cannot find anything that helps. It must be something simple that i am missing.
EDIT:
initializing it by declaring the parameters explicitly does not work either.
var tokenClient = new TokenClient(tokenUrl, clientId: clientId, clientSecret: CLIENT_SECRET);// CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
However initializing it with the one parameter works fine.
var tokenClient = new TokenClient(tokenUrl);
c# asp.net-identity
I have a new MVC project using TokenClient from IdentityModel
var tokenClient = new TokenClient(tokenUrl, clientId, CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
I have the nuget package in for IdentityModel and everything compiles fine. However, at runtime I get the following error.
Method not found: 'Void
IdentityModel.Client.TokenClient..ctor(System.String, System.String,
System.String, System.Net.Http.HttpMessageHandler,
IdentityModel.Client.AuthenticationStyle)'.
The .NET version of the MVC project is 4.6.1
What can be causing this issue? I have been searching google and cannot find anything that helps. It must be something simple that i am missing.
EDIT:
initializing it by declaring the parameters explicitly does not work either.
var tokenClient = new TokenClient(tokenUrl, clientId: clientId, clientSecret: CLIENT_SECRET);// CLIENT_SECRET, null, AuthenticationStyle.BasicAuthentication);
However initializing it with the one parameter works fine.
var tokenClient = new TokenClient(tokenUrl);
c# asp.net-identity
c# asp.net-identity
edited Nov 20 at 15:58
asked Nov 20 at 15:27
markblue777
3691318
3691318
Check out this other SO Q/A....can you confirm/deny any of these possible solutions? stackoverflow.com/questions/7578583/method-not-found-on-runtime
– user1011627
Nov 20 at 15:45
it is a brand new project that has a nuget reference to IdentityModel version 3.10.1. The project is just the standard mvc template project that you get when you create the project
– markblue777
Nov 20 at 15:55
add a comment |
Check out this other SO Q/A....can you confirm/deny any of these possible solutions? stackoverflow.com/questions/7578583/method-not-found-on-runtime
– user1011627
Nov 20 at 15:45
it is a brand new project that has a nuget reference to IdentityModel version 3.10.1. The project is just the standard mvc template project that you get when you create the project
– markblue777
Nov 20 at 15:55
Check out this other SO Q/A....can you confirm/deny any of these possible solutions? stackoverflow.com/questions/7578583/method-not-found-on-runtime
– user1011627
Nov 20 at 15:45
Check out this other SO Q/A....can you confirm/deny any of these possible solutions? stackoverflow.com/questions/7578583/method-not-found-on-runtime
– user1011627
Nov 20 at 15:45
it is a brand new project that has a nuget reference to IdentityModel version 3.10.1. The project is just the standard mvc template project that you get when you create the project
– markblue777
Nov 20 at 15:55
it is a brand new project that has a nuget reference to IdentityModel version 3.10.1. The project is just the standard mvc template project that you get when you create the project
– markblue777
Nov 20 at 15:55
add a comment |
2 Answers
2
active
oldest
votes
up vote
1
down vote
accepted
IdentityModel is a 3rd party library built by the creators of Identity Server. v3.10.1 definitely does have that method overload in it. I have recreated your error and the reason you are getting the error is because IdentityModel v3.10.1 is not compatible with .NET Framework 4.6.1. The creators changed the signature of that overload and made the HttpMessageHandler an optional parameter so your code will compile, but will throw this Method Not Found error at runtime. The IdentityModel project you are referencing has been archived by the guys at Identity Server so I would recommend migrating if you can.
You have a couple of options as I see it:
1) Migrate to .NET Core and leverage IdentityModel v2.
2) Downgrade your project to .NET Framework 4.5.2 (the last compatible version for IdentityModel V1)
3) Do not use this overload (as you've already found the single tokenUrl param works). I would stay away from this approach as you are likely to run into additional compatibility issues.
Basically, if you don't want to migrate to .NET Core, keep this project on 4.5.2. If you can migrate, do that instead. Identity Server is moving toward .NET Core as a whole anyway and you will get more mileage by making that leap now.
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
add a comment |
up vote
0
down vote
I encountered the same problem while working through the MVC Getting Started example for IdentityServer3. If you check the dependencies for IdentityModel v3.10.1 you'll notice that it depends on System.Net.Http (>= 4.3.3). My project had v 4.2, updating to the current version solved the problem.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53396295%2fissues-with-tokenclient-in-identitymodel%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
accepted
IdentityModel is a 3rd party library built by the creators of Identity Server. v3.10.1 definitely does have that method overload in it. I have recreated your error and the reason you are getting the error is because IdentityModel v3.10.1 is not compatible with .NET Framework 4.6.1. The creators changed the signature of that overload and made the HttpMessageHandler an optional parameter so your code will compile, but will throw this Method Not Found error at runtime. The IdentityModel project you are referencing has been archived by the guys at Identity Server so I would recommend migrating if you can.
You have a couple of options as I see it:
1) Migrate to .NET Core and leverage IdentityModel v2.
2) Downgrade your project to .NET Framework 4.5.2 (the last compatible version for IdentityModel V1)
3) Do not use this overload (as you've already found the single tokenUrl param works). I would stay away from this approach as you are likely to run into additional compatibility issues.
Basically, if you don't want to migrate to .NET Core, keep this project on 4.5.2. If you can migrate, do that instead. Identity Server is moving toward .NET Core as a whole anyway and you will get more mileage by making that leap now.
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
add a comment |
up vote
1
down vote
accepted
IdentityModel is a 3rd party library built by the creators of Identity Server. v3.10.1 definitely does have that method overload in it. I have recreated your error and the reason you are getting the error is because IdentityModel v3.10.1 is not compatible with .NET Framework 4.6.1. The creators changed the signature of that overload and made the HttpMessageHandler an optional parameter so your code will compile, but will throw this Method Not Found error at runtime. The IdentityModel project you are referencing has been archived by the guys at Identity Server so I would recommend migrating if you can.
You have a couple of options as I see it:
1) Migrate to .NET Core and leverage IdentityModel v2.
2) Downgrade your project to .NET Framework 4.5.2 (the last compatible version for IdentityModel V1)
3) Do not use this overload (as you've already found the single tokenUrl param works). I would stay away from this approach as you are likely to run into additional compatibility issues.
Basically, if you don't want to migrate to .NET Core, keep this project on 4.5.2. If you can migrate, do that instead. Identity Server is moving toward .NET Core as a whole anyway and you will get more mileage by making that leap now.
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
add a comment |
up vote
1
down vote
accepted
up vote
1
down vote
accepted
IdentityModel is a 3rd party library built by the creators of Identity Server. v3.10.1 definitely does have that method overload in it. I have recreated your error and the reason you are getting the error is because IdentityModel v3.10.1 is not compatible with .NET Framework 4.6.1. The creators changed the signature of that overload and made the HttpMessageHandler an optional parameter so your code will compile, but will throw this Method Not Found error at runtime. The IdentityModel project you are referencing has been archived by the guys at Identity Server so I would recommend migrating if you can.
You have a couple of options as I see it:
1) Migrate to .NET Core and leverage IdentityModel v2.
2) Downgrade your project to .NET Framework 4.5.2 (the last compatible version for IdentityModel V1)
3) Do not use this overload (as you've already found the single tokenUrl param works). I would stay away from this approach as you are likely to run into additional compatibility issues.
Basically, if you don't want to migrate to .NET Core, keep this project on 4.5.2. If you can migrate, do that instead. Identity Server is moving toward .NET Core as a whole anyway and you will get more mileage by making that leap now.
IdentityModel is a 3rd party library built by the creators of Identity Server. v3.10.1 definitely does have that method overload in it. I have recreated your error and the reason you are getting the error is because IdentityModel v3.10.1 is not compatible with .NET Framework 4.6.1. The creators changed the signature of that overload and made the HttpMessageHandler an optional parameter so your code will compile, but will throw this Method Not Found error at runtime. The IdentityModel project you are referencing has been archived by the guys at Identity Server so I would recommend migrating if you can.
You have a couple of options as I see it:
1) Migrate to .NET Core and leverage IdentityModel v2.
2) Downgrade your project to .NET Framework 4.5.2 (the last compatible version for IdentityModel V1)
3) Do not use this overload (as you've already found the single tokenUrl param works). I would stay away from this approach as you are likely to run into additional compatibility issues.
Basically, if you don't want to migrate to .NET Core, keep this project on 4.5.2. If you can migrate, do that instead. Identity Server is moving toward .NET Core as a whole anyway and you will get more mileage by making that leap now.
answered Nov 20 at 17:10
user1011627
1,1631017
1,1631017
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
add a comment |
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Thanks for the reply, I thought it was going to be something simple to fix this issue. This work is for a POC so no room to learn anything new. However, looks like I am going to have to move towards .net core.
– markblue777
Nov 21 at 7:55
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
Welcome...if just POC I would just create the app as 4.5.2 unless you need something from .NET Framework above that version. I tested that method on that version and it does in fact work. Best of luck in whichever direction you go.
– user1011627
Nov 21 at 15:02
add a comment |
up vote
0
down vote
I encountered the same problem while working through the MVC Getting Started example for IdentityServer3. If you check the dependencies for IdentityModel v3.10.1 you'll notice that it depends on System.Net.Http (>= 4.3.3). My project had v 4.2, updating to the current version solved the problem.
add a comment |
up vote
0
down vote
I encountered the same problem while working through the MVC Getting Started example for IdentityServer3. If you check the dependencies for IdentityModel v3.10.1 you'll notice that it depends on System.Net.Http (>= 4.3.3). My project had v 4.2, updating to the current version solved the problem.
add a comment |
up vote
0
down vote
up vote
0
down vote
I encountered the same problem while working through the MVC Getting Started example for IdentityServer3. If you check the dependencies for IdentityModel v3.10.1 you'll notice that it depends on System.Net.Http (>= 4.3.3). My project had v 4.2, updating to the current version solved the problem.
I encountered the same problem while working through the MVC Getting Started example for IdentityServer3. If you check the dependencies for IdentityModel v3.10.1 you'll notice that it depends on System.Net.Http (>= 4.3.3). My project had v 4.2, updating to the current version solved the problem.
answered Nov 23 at 13:33
rjax
114
114
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53396295%2fissues-with-tokenclient-in-identitymodel%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Check out this other SO Q/A....can you confirm/deny any of these possible solutions? stackoverflow.com/questions/7578583/method-not-found-on-runtime
– user1011627
Nov 20 at 15:45
it is a brand new project that has a nuget reference to IdentityModel version 3.10.1. The project is just the standard mvc template project that you get when you create the project
– markblue777
Nov 20 at 15:55